VTL_on_FPGA [그 6 VTL_on_FPGA의 시뮬레이션]
효능
VTL_on_FPGA의 하드의 기본 동작을 간편하게 디버그 할 수 있습니다.
※다소 과대 광고 기미
전 자료
아래 사이트가 매우 참고가 되었습니다.
[Icarus Verilog 컴파일러 사용]
이점: 각 클록의 각 신호의 거동을 알 수 있어 자신의 어리석음을 찾을 수 있습니다.
결점: 눈을 접시처럼 하여 신호를 바라보아야 합니다.
테스트 벤치를 쓰는 것이 키모라고 생각합니다.
설치
하지만, 원래 재료는 Linux이며, Windows용의 Icarus Verilog와 gtkwave의 인스톨이 필요.
설치처는 각자 다르다고 생각하므로 「_run.bat」를 편집해 주세요. (\APP2\부분)
프로그램 소스는 여기에 올리고 있습니다.
[td4_sim]
@@echo off
C:\app2\iverilog\bin\iverilog -o td4.o rs232c.v ps2_rx.v td4.v td4_tb.v
C:\app2\iverilog\bin\vvp td4.o
timeout 3
C:\app2\iverilog\gtkwave\bin\gtkwave wave.vcd -a td4.gtkw
del td4.o wave.vcd
조작
(1) 「TEST.GM」에 다음과 같은 VTL 프로그램을 씁니다.
10 B=$30
20 !=90
30 B=B+1
40 #=20
90 <0=B ]
(2)GAME86을 기동해, 「[[[」명령을 발행.」
"pram.hex"가 생성됩니다.
※ 개시번지를 0으로 하는 것을 잊지 않게. (R=$0000)
G>>[[[
[p0 [LO gm80\test.gm [p1 [LO gm80\gm80.gm #=1
-PASS1-
10 0000 B= $
20 0009 !=
30 0011 B= B + 1(01)
40 001A #=
90 0022 <= B ]=
-PASS2-
0000 NOP: 0F
0001 LIA: DF 1F FF
0004 STS: 38
0005 LIA: D7 30 ; 10 B=$30
0007 STA: 83
0008 JSR: DE 00 13 ; 20 !=90
000B LDA: 43 ; 30 B=B+1
000C LIB: F7 01
000E ADD: 01
000F STA: 83
0010 JMP: FE 00 08 ; 40 #=20
0013 LDA: 43 ; 90 <0=B ]
0014 LIB: FF 00 00
0017 OUT: 3F
0018 RTS: C2
0019 RTS: C2
Hex作成 クリップ作成
SOURCE:44(0000-002C)
OBJECT:26(C000-C019)0000-001A
WORK :42(7800-7857)
G>>
(3) 「pram.hex」를 「TD4_SIM」에 카피
「_run.bat」를 기동.
에러가 없으면 다음과 같은 화면이 표시됩니다.
기타
일단 움직이고 있는 수준이며, 상황에 따라서는 움직이지 않을 가능성이 있습니다.
위 기재의 하드, 소프트는 무보증이며, 각자의 책임에 있어서 이용 바랍니다.
Reference
이 문제에 관하여(VTL_on_FPGA [그 6 VTL_on_FPGA의 시뮬레이션]), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/hi631/items/c19fe4a5f513d56b87ab
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
아래 사이트가 매우 참고가 되었습니다.
[Icarus Verilog 컴파일러 사용]
이점: 각 클록의 각 신호의 거동을 알 수 있어 자신의 어리석음을 찾을 수 있습니다.
결점: 눈을 접시처럼 하여 신호를 바라보아야 합니다.
테스트 벤치를 쓰는 것이 키모라고 생각합니다.
설치
하지만, 원래 재료는 Linux이며, Windows용의 Icarus Verilog와 gtkwave의 인스톨이 필요.
설치처는 각자 다르다고 생각하므로 「_run.bat」를 편집해 주세요. (\APP2\부분)
프로그램 소스는 여기에 올리고 있습니다.
[td4_sim]
@@echo off
C:\app2\iverilog\bin\iverilog -o td4.o rs232c.v ps2_rx.v td4.v td4_tb.v
C:\app2\iverilog\bin\vvp td4.o
timeout 3
C:\app2\iverilog\gtkwave\bin\gtkwave wave.vcd -a td4.gtkw
del td4.o wave.vcd
조작
(1) 「TEST.GM」에 다음과 같은 VTL 프로그램을 씁니다.
10 B=$30
20 !=90
30 B=B+1
40 #=20
90 <0=B ]
(2)GAME86을 기동해, 「[[[」명령을 발행.」
"pram.hex"가 생성됩니다.
※ 개시번지를 0으로 하는 것을 잊지 않게. (R=$0000)
G>>[[[
[p0 [LO gm80\test.gm [p1 [LO gm80\gm80.gm #=1
-PASS1-
10 0000 B= $
20 0009 !=
30 0011 B= B + 1(01)
40 001A #=
90 0022 <= B ]=
-PASS2-
0000 NOP: 0F
0001 LIA: DF 1F FF
0004 STS: 38
0005 LIA: D7 30 ; 10 B=$30
0007 STA: 83
0008 JSR: DE 00 13 ; 20 !=90
000B LDA: 43 ; 30 B=B+1
000C LIB: F7 01
000E ADD: 01
000F STA: 83
0010 JMP: FE 00 08 ; 40 #=20
0013 LDA: 43 ; 90 <0=B ]
0014 LIB: FF 00 00
0017 OUT: 3F
0018 RTS: C2
0019 RTS: C2
Hex作成 クリップ作成
SOURCE:44(0000-002C)
OBJECT:26(C000-C019)0000-001A
WORK :42(7800-7857)
G>>
(3) 「pram.hex」를 「TD4_SIM」에 카피
「_run.bat」를 기동.
에러가 없으면 다음과 같은 화면이 표시됩니다.
기타
일단 움직이고 있는 수준이며, 상황에 따라서는 움직이지 않을 가능성이 있습니다.
위 기재의 하드, 소프트는 무보증이며, 각자의 책임에 있어서 이용 바랍니다.
Reference
이 문제에 관하여(VTL_on_FPGA [그 6 VTL_on_FPGA의 시뮬레이션]), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/hi631/items/c19fe4a5f513d56b87ab
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
@@echo off
C:\app2\iverilog\bin\iverilog -o td4.o rs232c.v ps2_rx.v td4.v td4_tb.v
C:\app2\iverilog\bin\vvp td4.o
timeout 3
C:\app2\iverilog\gtkwave\bin\gtkwave wave.vcd -a td4.gtkw
del td4.o wave.vcd
(1) 「TEST.GM」에 다음과 같은 VTL 프로그램을 씁니다.
10 B=$30
20 !=90
30 B=B+1
40 #=20
90 <0=B ]
(2)GAME86을 기동해, 「[[[」명령을 발행.」
"pram.hex"가 생성됩니다.
※ 개시번지를 0으로 하는 것을 잊지 않게. (R=$0000)
G>>[[[
[p0 [LO gm80\test.gm [p1 [LO gm80\gm80.gm #=1
-PASS1-
10 0000 B= $
20 0009 !=
30 0011 B= B + 1(01)
40 001A #=
90 0022 <= B ]=
-PASS2-
0000 NOP: 0F
0001 LIA: DF 1F FF
0004 STS: 38
0005 LIA: D7 30 ; 10 B=$30
0007 STA: 83
0008 JSR: DE 00 13 ; 20 !=90
000B LDA: 43 ; 30 B=B+1
000C LIB: F7 01
000E ADD: 01
000F STA: 83
0010 JMP: FE 00 08 ; 40 #=20
0013 LDA: 43 ; 90 <0=B ]
0014 LIB: FF 00 00
0017 OUT: 3F
0018 RTS: C2
0019 RTS: C2
Hex作成 クリップ作成
SOURCE:44(0000-002C)
OBJECT:26(C000-C019)0000-001A
WORK :42(7800-7857)
G>>
(3) 「pram.hex」를 「TD4_SIM」에 카피
「_run.bat」를 기동.
에러가 없으면 다음과 같은 화면이 표시됩니다.
기타
일단 움직이고 있는 수준이며, 상황에 따라서는 움직이지 않을 가능성이 있습니다.
위 기재의 하드, 소프트는 무보증이며, 각자의 책임에 있어서 이용 바랍니다.
Reference
이 문제에 관하여(VTL_on_FPGA [그 6 VTL_on_FPGA의 시뮬레이션]), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hi631/items/c19fe4a5f513d56b87ab텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)