Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
饶先宏
hdl4se
提交
a94aaacd
H
hdl4se
项目概览
饶先宏
/
hdl4se
通知
12
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
hdl4se
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
a94aaacd
编写于
9月 09, 2021
作者:
饶先宏
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
202109090950
上级
63097abc
变更
20
展开全部
隐藏空白更改
内联
并排
Showing
20 changed file
with
899 addition
and
5400 deletion
+899
-5400
examples/hdl4se_riscv/de1/de1_riscv_v4.qsf
examples/hdl4se_riscv/de1/de1_riscv_v4.qsf
+1
-4
examples/hdl4se_riscv/de1/de1_riscv_v4.qws
examples/hdl4se_riscv/de1/de1_riscv_v4.qws
+0
-0
examples/hdl4se_riscv/de1/de1_riscv_v4.sof
examples/hdl4se_riscv/de1/de1_riscv_v4.sof
+0
-0
examples/hdl4se_riscv/de1/ram4kB.qip
examples/hdl4se_riscv/de1/ram4kB.qip
+0
-0
examples/hdl4se_riscv/de1/test.hex
examples/hdl4se_riscv/de1/test.hex
+0
-292
examples/hdl4se_riscv/de1/test.ver
examples/hdl4se_riscv/de1/test.ver
+0
-4096
examples/hdl4se_riscv/hdl4se_riscv_sim/hdl4se_riscv_core_v4.c
...ples/hdl4se_riscv/hdl4se_riscv_sim/hdl4se_riscv_core_v4.c
+29
-75
examples/hdl4se_riscv/hdl4se_riscv_sim/riscv_sim_main_v4.c
examples/hdl4se_riscv/hdl4se_riscv_sim/riscv_sim_main_v4.c
+1
-1
examples/hdl4se_riscv/test_code/console.c
examples/hdl4se_riscv/test_code/console.c
+2
-10
examples/hdl4se_riscv/test_code/test.cod
examples/hdl4se_riscv/test_code/test.cod
+68
-76
examples/hdl4se_riscv/test_code/test.elf
examples/hdl4se_riscv/test_code/test.elf
+0
-0
examples/hdl4se_riscv/test_code/test.hex
examples/hdl4se_riscv/test_code/test.hex
+90
-98
examples/hdl4se_riscv/test_code/test.info
examples/hdl4se_riscv/test_code/test.info
+24
-24
examples/hdl4se_riscv/test_code/test.mif
examples/hdl4se_riscv/test_code/test.mif
+321
-321
examples/hdl4se_riscv/test_code/test.txt
examples/hdl4se_riscv/test_code/test.txt
+312
-363
examples/hdl4se_riscv/test_code/test_new.c
examples/hdl4se_riscv/test_code/test_new.c
+30
-30
examples/hdl4se_riscv/verilog/altera/ram/ram4kB.v
examples/hdl4se_riscv/verilog/altera/ram/ram4kB.v
+3
-3
examples/hdl4se_riscv/verilog/altera/ram/ram4kB_bb.v
examples/hdl4se_riscv/verilog/altera/ram/ram4kB_bb.v
+2
-2
examples/hdl4se_riscv/verilog/riscv_core_v4.v
examples/hdl4se_riscv/verilog/riscv_core_v4.v
+15
-4
examples/hdl4se_riscv/verilog/riscv_sim_v4.v
examples/hdl4se_riscv/verilog/riscv_sim_v4.v
+1
-1
未找到文件。
examples/hdl4se_riscv/de1/de1_riscv_v4.qsf
浏览文件 @
a94aaacd
...
...
@@ -5,7 +5,7 @@
set_global_assignment -name FAMILY "Cyclone V"
set_global_assignment -name DEVICE 5CSEMA5F31C6
set_global_assignment -name TOP_LEVEL_ENTITY "de1_riscv_v4"
set_global_assignment -name ORIGINAL_QUARTUS_VERSION
"15.1.0"
set_global_assignment -name ORIGINAL_QUARTUS_VERSION
15.1.0
set_global_assignment -name LAST_QUARTUS_VERSION 13.1
set_global_assignment -name PROJECT_CREATION_TIME_DATE "08:23:33 SEPTEMBER 02,2021"
set_global_assignment -name DEVICE_FILTER_PACKAGE FBGA
...
...
@@ -488,9 +488,6 @@ set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)"
set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top
set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top
set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top
set_global_assignment -name VERILOG_FILE ../verilog/alex_uart/rtl/uart_tx.v
set_global_assignment -name VERILOG_FILE ../verilog/alex_uart/rtl/uart_rx.v
set_global_assignment -name VERILOG_FILE ../verilog/alex_uart/rtl/uart.v
set_global_assignment -name VERILOG_FILE ../verilog/altera/ram/ram4kB.v
set_global_assignment -name VERILOG_FILE ../verilog/alu/div32.v
set_global_assignment -name VERILOG_FILE ../verilog/alu/mul32.v
...
...
examples/hdl4se_riscv/de1/de1_riscv_v4.qws
已删除
100644 → 0
浏览文件 @
63097abc
文件已删除
examples/hdl4se_riscv/de1/de1_riscv_v4.sof
浏览文件 @
a94aaacd
无法预览此类型文件
examples/hdl4se_riscv/de1/ram4kB.qip
0 → 100644
浏览文件 @
a94aaacd
examples/hdl4se_riscv/de1/test.hex
已删除
100644 → 0
浏览文件 @
63097abc
:10007400930700006388070037150000130585B750
:100084006F00103567800000971100009381C17ADA
:10009400138541C4138601C63306A64093050000A8
:1000A400EF00900D171500001305C5B26308050095
:1000B40017150000130545ACEF009031EF00100256
:1000C400032501009305410013060000EF00C00A58
:1000D4006F00C07D130101FF2324810083C741C445
:1000E400232611006392070293070000638A070026
:1000F400371500001305050097000000E700000015
:10010400930710002382F1C48320C10003248100DB
:10011400130101016780000093070000638C07004E
:1001240037150000938581C41305050017030000EB
:100134006700000067800000130101FE232E810088
:10014400130401022326A4FE0327C4FE9307A00080
:10015400B377F70217170000032747319397270057
:10016400B307F70083A70700138507000324C10121
:100174001301010267800000130101FC232E110208
:10018400232C8102232A9102130401042326A4FCB4
:100194002324B4FC930710002322F4FEB70700F0D5
:1001A4002320F4FEB70700F093870701232EF4FC05
:1001B40093070000130800002324F4FE232604FF01
:1001C4008327C4FD37077F6F1307D77723A0E70082
:1001D4008327C4FD938747003757666D1307B7F528
:1001E40023A0E700032684FE8326C4FE1305100023
:1001F400930500003307A600130807003338C8002E
:10020400B387B600B306F800938706002324E4FE00
:100214002326F4FE032784FE8327C4FE2328E4FC5C
:10022400232AF4FC832704FD13850700EFF0DFF095
:1002340093040500032704FD832744FD1306A0004F
:10024400930600001305070093850700EF000023C1
:10025400130705009387050093070700138507001C
:10026400EFF09FED9307050093978700B3E4F40044
:10027400032704FD832744FD13064006930600006C
:100284001305070093850700EF00401F13070500BF
:10029400938705009307070013850700EFF0DFE954
:1002A4009307050093970701B3E4F400032704FDC3
:1002B400832744FD1306803E9306000013050700C0
:1002C40093850700EF00801B130705009387050043
:1002D4009307070013850700EFF01FE69307050057
:1002E4009397870133E7F4008327C4FD23A0E70035
:1002F400032704FD832744FD3726000013060671F7
:10030400930600001305070093850700EF0000170C
:1003140013070500938705002328E4FC232AF4FC33
:10032400832704FD13850700EFF01FE19304050004
:10033400032704FD832744FD1306A0009306000051
:100344001305070093850700EF004013130705000A
:10035400938705009307070013850700EFF0DFDD9F
:100364009307050093978700B3E4F400032704FD83
:10037400832744FD13064006930600001305070077
:1003840093850700EF00800F13070500938705008E
:100394009307070013850700EFF01FDA93070500A2
:1003A40093970701B3E4F400032704FD832744FD76
:1003B4001306803E9306000013050700938507008B
:1003C400EF00C00B13070500938705009307070090
:1003D40013850700EFF05FD6930705001397870195
:1003E4008327C4FD9387470033E7E40023A0E70095
:1003F400032704FD832744FD3726000013060671F6
:10040400930600001305070093850700EF0000071B
:1004140013070500938705002328E4FC232AF4FC32
:10042400832704FD13850700EFF01FD19304050013
:10043400032704FD832744FD1306A0009306000050
:100444001305070093850700EF0040031307050019
:10045400938705009307070013850700EFF0DFCDAE
:1004640093070500139787008327C4FD93878700AC
:1004740033E7E40023A0E7006FF0DFD613030500A1
:1004840093880500130706001308050093870500E9
:1004940063920628B7150000938505CE63F6C80E4F
:1004A400B70601006378D60C9336061093C616007F
:1004B400939636003355D600B385A50083C5050051
:1004C40013050002B386D500B305D540630CD500EF
:1004D400B397B800B356D3003317B600B3E7F600AA
:1004E4003318B3009355070133D3B702131607012A
:1004F40013560601B3F7B70213050300B3086602E7
:100504009396070193570801B3E7D70063FE1701D9
:10051400B387E7001305F3FF63E8E70063F6170109
:100524001305E3FFB387E700B3871741B3D8B702D6
:100534001318080113580801B3F7B702B3061603DA
:10054400939707013368F80093870800637CD80009
:10055400330807019387F8FF6366E8006374D800E3
:100564009387E8FF131505013365F5009305000033
:10057400678000003705000193060001E36CA6F2D2
:10058400930680016FF01FF36314060073001000DC
:10059400B70701006370F60C9336061093C6160075
:1005A40093963600B357D600B385F50083C705008C
:1005B400B387D70093060002B385F6406396F60A24
:1005C400B387C840930510009358070133DE17031F
:1005D400131607011356060193560801B3F71703C0
:1005E40013050E003303C60393970701B3E7F60020
:1005F40063FE6700B387E7001305FEFF63E8E700C7
:1006040063F667001305EEFFB387E700B38767401F
:1006140033D317031318080113580801B3F717034A
:10062400B3066602939707013368F8009307030043
:10063400637CD800330807019307F3FF6366E8007F
:100644006374D8009307E3FF131505013365F500C0
:1006540067800000B707000193060001E364F6F425
:10066400930680016FF01FF43317B600B3D6F80079
:1006740013550701B357F3003318B30033D3A6025D
:1006840013160701B398B80013560601B3E7170110
:10069400B3F6A602B30866029395060193D6070142
:1006A400B3E6B6009305030063FE1601B386E600C5
:1006B4009305F3FF63E8E60063F616019305E3FF91
:1006C400B386E600B3861641B3D8A6029397070112
:1006D40093D70701B3F6A6023306160393960601D1
:1006E400B3E7D7009386080063FEC700B387E7002B
:1006F4009386F8FF63E8E70063F6C7009386E8FF94
:10070400B387E70093950501B387C740B3E5D500E8
:100714006FF09FEB63E6D518B707010063F4F604A6
:1007240013B706101347170013173700B717000045
:10073400B3D5E600938707CEB387B70083C7070016
:10074400B387E70013070002B305F7406316F70207
:1007540013051000E3EE16E13335C300134515000D
:1007640067800000B707000113070001E3E0F6FC0F
:10077400130780016FF09FFB3357F600B396B60062
:10078400B366D70033D7F800B398B800B357F30073
:10079400B3E7170193D80601B35E17031398060154
:1007A400135808013316B60033771703330ED803F2
:1007B4001315070113D707013367A70013850E002C
:1007C400637EC7013307D7001385FEFF6368D70034
:1007D4006376C7011385EEFF3307D7003307C7419C
:1007E400335E17039397070193D7070133771703F2
:1007F4003308C80313170701B3E7E70013070E0014
:1008040063FE0701B387D7001307FEFF63E8D70031
:1008140063F607011307EEFFB387D700131505012D
:10082400370E01003365E5009306FEFF3377D500EC
:10083400B3870741B376D600135805011356060152
:10084400B308D702B306D8023307C7023308C80275
:100854003306D70013D708013307C7006374D700E2
:100864003308C80193560701B386060163E6D7022D
:10087400E39ED7CEB70701009387F7FF3377F700DE
:1008840013170701B3F8F8003313B3003307170144
:1008940093050000E37EE3CC1305F5FF6FF01FCD55
:1008A400930500001305000067800000130101FF99
:1008B400930500002324810023261100130405005E
:1008C400EF00401903A581C38327C5036384070090
:1008D400E780070013050400EF00403A130101FF0D
:1008E400232481002320210137140000371900003C
:1008F4009307C4021309C9023309F94023261100DE
:100904002322910013592940630009021304C402ED
:100914009304000083270400938414001304440008
:10092400E7800700E31899FE371400003719000028
:100934009307C402130949033309F94013592940A1
:10094400630009021304C402930400008327040013
:100954009384140013044400E7800700E31899FE0D
:100964008320C10003248100832441000329010062
:1009740013010101678000001303F0001307050051
:10098400637EC3029377F7006390070A63920508B6
:10099400937606FF1376F600B386E6002320B700AD
:1009A4002322B7002324B7002326B7001307070127
:1009B400E366D7FE6314060067800000B306C340F5
:1009C4009396260097020000B38656006780C600FF
:1009D4002307B700A306B7002306B700A305B70093
:1009E4002305B700A304B7002304B700A303B7008B
:1009F4002303B700A302B7002302B700A301B70083
:100A04002301B700A300B7002300B70067800000EC
:100A140093F5F50F93968500B3E5D50093960501FC
:100A2400B3E5D5006FF0DFF6939627009702000038
:100A3400B386560093820000E78006FA9380020092
:100A4400938707FF3307F7403306F600E378C3F6CE
:100A54006FF0DFF3130101FD232C410103AA81C3CD
:100A6400232021032326110203298A14232481022B
:100A740023229102232E3101232A510123286101CB
:100A8400232671012324810163000904130B05004B
:100A9400938B0500930A10009309F0FF8324490007
:100AA4001384F4FF6342040293942400B304990072
:100AB40063840B0483A74410638077051304F4FF55
:100AC4009384C4FFE31634FF8320C102032481020C
:100AD40083244102032901028329C101032A8101DC
:100AE400832A4101032B0101832BC100032C8100C4
:100AF40013010103678000008327490083A6440093
:100B04009387F7FF638E870423A20400E38806FA21
:100B14008327891833978A00032C4900B377F70099
:100B240063920702E78006000327490083278A149B
:100B340063148701E38427F9E38807F8138907001E
:100B44006FF0DFF58327C91883A544083377F700CE
:100B5400631C070013050B00E78006006FF0DFFC41
:100B6400232289006FF09FFA13850500E7800600B1
:100B74006FF09FFB130101FF23248100B7170000CE
:100B84003714000093874703130484033304F440A9
:100B940023229100232611009354244063800402ED
:100BA4001304C4FF3304F400832704009384F4FF84
:100BB4001304C4FFE7800700E39804FE8320C10008
:100BC4000324810083244100130101016780000094
:100BD40093050500930600001306000013050000AA
:100BE4006F00400003A781C383278714638C070425
:100BF40003A747001308F001634EE8061318270003
:100C040063060502338307012324C30883A88718D6
:100C1400130610003316E600B3E8C80023A417191E
:100C24002324D310930620006304D502130717006E
:100C340023A2E700B387070123A4B700130500002C
:100C4400678000009307C7142324F7146FF05FFA3A
:100C540083A6C7181307170023A2E700B3E6C6004C
:100C640023A6D718B387070123A4B70013050000F0
:100C7400678000001305F0FF678000009308D0052B
:100C840073000000634405006F000000130101FFBE
:100C9400232481001304050023261100330480401B
:100CA400EF00C000232085006F00000003A501C4ED
:040CB4006780000055
:100CB8003F000000060000005B0000004F0000003D
:100CC800660000006D0000007D00000007000000C5
:100CD8007F0000006F00000000010202030303030D
:100CE80004040404040404040505050505050505B4
:100CF8000505050505050505060606060606060694
:100D0800060606060606060606060606060606067B
:100D18000606060606060606070707070707070763
:100D2800070707070707070707070707070707074B
:100D3800070707070707070707070707070707073B
:100D4800070707070707070707070707070707072B
:100D58000707070707070707080808080808080813
:100D680008080808080808080808080808080808FB
:100D780008080808080808080808080808080808EB
:100D880008080808080808080808080808080808DB
:100D980008080808080808080808080808080808CB
:100DA80008080808080808080808080808080808BB
:100DB80008080808080808080808080808080808AB
:100DC800080808080808080808080808080808089B
:080DD8000808080808080808D3
:101000001000000000000000037A5200017C010182
:101010001B0D0200100000001800000064F4FFFF28
:0C10200030040000000000000000000090
:08102C00740000001C0100002B
:04103400D8000000E0
:1010380000000000241300008C130000F4130000CB
:101048000000000000000000000000000000000098
:101058000000000000000000000000000000000088
:101068000000000000000000000000000000000078
:101078000000000000000000000000000000000068
:101088000000000000000000000000000000000058
:101098000000000000000000000000000000000048
:1010A8000000000000000000000000000000000038
:1010B8000000000000000000000000000000000028
:1010C8000000000000000000000000000000000018
:1010D8000000000000000000010000000000000007
:1010E8000E33CDAB34126DE6ECDE05000B000000CC
:1010F80000000000000000000000000000000000E8
:1011080000000000000000000000000000000000D7
:1011180000000000000000000000000000000000C7
:1011280000000000000000000000000000000000B7
:1011380000000000000000000000000000000000A7
:101148000000000000000000000000000000000097
:101158000000000000000000000000000000000087
:101168000000000000000000000000000000000077
:101178000000000000000000000000000000000067
:101188000000000000000000000000000000000057
:101198000000000000000000000000000000000047
:1011A8000000000000000000000000000000000037
:1011B8000000000000000000000000000000000027
:1011C8000000000000000000000000000000000017
:1011D8000000000000000000000000000000000007
:1011E80000000000000000000000000000000000F7
:1011F80000000000000000000000000000000000E7
:1012080000000000000000000000000000000000D6
:1012180000000000000000000000000000000000C6
:1012280000000000000000000000000000000000B6
:1012380000000000000000000000000000000000A6
:101248000000000000000000000000000000000096
:101258000000000000000000000000000000000086
:101268000000000000000000000000000000000076
:101278000000000000000000000000000000000066
:101288000000000000000000000000000000000056
:101298000000000000000000000000000000000046
:1012A8000000000000000000000000000000000036
:1012B8000000000000000000000000000000000026
:1012C8000000000000000000000000000000000016
:1012D8000000000000000000000000000000000006
:1012E80000000000000000000000000000000000F6
:1012F80000000000000000000000000000000000E6
:1013080000000000000000000000000000000000D5
:1013180000000000000000000000000000000000C5
:1013280000000000000000000000000000000000B5
:1013380000000000000000000000000000000000A5
:101348000000000000000000000000000000000095
:101358000000000000000000000000000000000085
:101368000000000000000000000000000000000075
:101378000000000000000000000000000000000065
:101388000000000000000000000000000000000055
:101398000000000000000000000000000000000045
:1013A8000000000000000000000000000000000035
:1013B8000000000000000000000000000000000025
:1013C8000000000000000000000000000000000015
:1013D8000000000000000000000000000000000005
:1013E80000000000000000000000000000000000F5
:1013F80000000000000000000000000000000000E5
:1014080000000000000000000000000000000000D4
:1014180000000000000000000000000000000000C4
:1014280000000000000000000000000000000000B4
:1014380000000000000000000000000000000000A4
:101448000000000000000000000000000000000094
:0814580000000000000000008C
:10146000FFFFFFFF0000000000000000B80C0000BC
:0C147000381000000000000038100000E0
:040000030000008C6D
:00000001FF
examples/hdl4se_riscv/de1/test.ver
已删除
100644 → 0
浏览文件 @
63097abc
此差异已折叠。
点击以展开。
examples/hdl4se_riscv/hdl4se_riscv_sim/hdl4se_riscv_core_v4.c
浏览文件 @
a94aaacd
...
...
@@ -101,8 +101,6 @@ IDLIST
END_IDLIST
enum
riscv_core_state
{
RISCVSTATE_INIT_REGX1
,
RISCVSTATE_INIT_REGX2
,
RISCVSTATE_READ_INST
,
RISCVSTATE_READ_REGS
,
RISCVSTATE_EXEC_INST
,
...
...
@@ -138,16 +136,15 @@ DEFINE_FUNC(riscv_core_read_sig, "state, pc, instr, bReadData, regrddata, regrdd
unsigned
int
state
;
state
=
vget
(
state
);
vput
(
wRead
,
0
);
if
(
state
==
RISCVSTATE_INIT_REGX2
)
{
vput
(
wRead
,
1
);
vput
(
bReadAddr
,
vget
(
pc
));
}
else
if
(
state
==
RISCVSTATE_READ_INST
)
{
vput
(
bReadAddr
,
0
);
switch
(
state
)
{
case
RISCVSTATE_WAIT_ST2
:
case
RISCVSTATE_WAIT_LD2
:
case
RISCVSTATE_READ_INST
:
{
vput
(
wRead
,
1
);
vput
(
bReadAddr
,
vget
(
pc
));
}
else
if
(
state
==
RISCVSTATE_EXEC_INST
)
{
}
break
;
case
RISCVSTATE_EXEC_INST
:
{
unsigned
int
instr
;
unsigned
int
opcode
;
instr
=
vget
(
instr
);
...
...
@@ -208,8 +205,8 @@ DEFINE_FUNC(riscv_core_read_sig, "state, pc, instr, bReadData, regrddata, regrdd
vput
(
wRead
,
1
);
vput
(
bReadAddr
,
newpc
);
}
}
else
if
(
state
==
RISCVSTATE_WAIT_LD
)
{
}
break
;
case
RISCVSTATE_WAIT_LD
:
{
unsigned
int
instr
=
vget
(
instr
);
unsigned
int
func3
=
(
instr
>>
12
)
&
0x7
;
unsigned
int
ldaddr
=
vget
(
ldaddr
);
...
...
@@ -227,29 +224,17 @@ DEFINE_FUNC(riscv_core_read_sig, "state, pc, instr, bReadData, regrddata, regrdd
vput
(
bReadAddr
,
ldaddr
+
4
);
}
else
{
vput
(
wRead
,
0
);
vput
(
bReadAddr
,
0
);
vput
(
wRead
,
1
);
vput
(
bReadAddr
,
vget
(
pc
)
);
}
}
/*else if (state == RISCVSTATE_WRITE_RD) {
vput(wRead, 1);
vput(bReadAddr, vget(pc));
}
*/
/*
else if (state == RISCVSTATE_WAIT_ST2) {
vput(wRead, 1);
vput(bReadAddr, vget(pc));
}
else if (state == RISCVSTATE_WAIT_ST) {
}
break
;
case
RISCVSTATE_WAIT_ST
:
{
unsigned
int
instr
=
vget
(
instr
);
unsigned
int
lastaddr
=
vget
(
lastaddr
);
unsigned
int
opcode
=
instr
&
0x7f
;
unsigned
int
func3
;
func3
=
(
instr
>>
12
)
&
0x7
;
opcode
>>=
2
;
vput(wRead, 1);
vput(bReadAddr, vget(pc));
if
(
opcode
==
0x08
)
{
if
(
func3
==
1
&&
(
lastaddr
&
3
)
==
3
)
{
// sh
vput
(
wRead
,
0
);
...
...
@@ -257,9 +242,13 @@ DEFINE_FUNC(riscv_core_read_sig, "state, pc, instr, bReadData, regrddata, regrdd
else
if
(
func3
==
2
&&
(
lastaddr
&
3
)
!=
0
)
{
vput
(
wRead
,
0
);
}
else
{
vput
(
wRead
,
1
);
vput
(
bReadAddr
,
vget
(
pc
));
}
}
}
break
;
}
*/
}
END_DEFINE_FUNC
DEFINE_FUNC
(
riscv_core_gen_ldaddr
,
"state, pc, instr, regrddata"
)
{
...
...
@@ -319,26 +308,6 @@ DEFINE_FUNC(riscv_core_reg_wr_sig, "state, dstreg, dstvalue, bReadData, instr, r
vput
(
regena2
,
0xf
);
vput
(
regwrdata2
,
vget
(
dstvalue
));
}
break
;
case
RISCVSTATE_INIT_REGX1
:
{
vput
(
regwren
,
1
);
vput
(
regno
,
1
);
vput
(
regena
,
0xf
);
vput
(
regwrdata
,
0x8c
);
vput
(
regwren2
,
1
);
vput
(
regno2
,
1
);
vput
(
regena2
,
0xf
);
vput
(
regwrdata2
,
0x8c
);
}
break
;
case
RISCVSTATE_INIT_REGX2
:
{
vput
(
regwren
,
1
);
vput
(
regno
,
2
);
vput
(
regena
,
0xf
);
vput
(
regwrdata
,
RAMSIZE
*
4
-
16
);
vput
(
regwren2
,
1
);
vput
(
regno2
,
2
);
vput
(
regena2
,
0xf
);
vput
(
regwrdata2
,
RAMSIZE
*
4
-
16
);
}
break
;
default:
{
vput
(
regwren
,
0
);
vput
(
regno
,
0
);
...
...
@@ -556,12 +525,6 @@ DEFINE_FUNC(riscv_core_exec_inst, "") {
DEFINE_FUNC
(
riscv_core_gen_dstreg
,
"state, instr, ldaddr, readreg, bReadData, pc, rs1, rs2, divclk, regrddata, imm"
)
{
switch
(
vget
(
state
))
{
case
RISCVSTATE_INIT_REGX1
:
{
RISCV_SETDSTREG
(
1
,
0x8c
);
}
break
;
case
RISCVSTATE_INIT_REGX2
:
{
RISCV_SETDSTREG
(
2
,
RAMSIZE
*
4
-
16
);
}
break
;
case
RISCVSTATE_WAIT_LD
:
{
unsigned
int
instr
=
vget
(
instr
);
unsigned
int
func3
=
(
instr
>>
12
)
&
0x7
;
...
...
@@ -781,26 +744,17 @@ DEFINE_FUNC(riscv_core_gen_imm, "instr, state") {
DEFINE_FUNC
(
riscv_core_gen_state
,
"state, instr, nwReset, imm, ldaddr, lastaddr, lastv"
)
{
if
(
vget
(
nwReset
)
==
0
)
{
vput
(
state
,
RISCVSTATE_
INIT_REGX1
);
vput
(
state
,
RISCVSTATE_
READ_INST
);
}
else
{
int
state
=
vget
(
state
);
switch
(
state
)
{
case
RISCVSTATE_INIT_REGX1
:
{
vput
(
state
,
RISCVSTATE_INIT_REGX2
);
}
break
;
case
RISCVSTATE_INIT_REGX2
:
{
vput
(
state
,
RISCVSTATE_READ_REGS
);
}
break
;
case
RISCVSTATE_READ_INST
:
{
vput
(
state
,
RISCVSTATE_READ_REGS
);
}
break
;
case
RISCVSTATE_READ_REGS
:
{
vput
(
state
,
RISCVSTATE_EXEC_INST
);
}
break
;
/*case RISCVSTATE_WRITE_RD: {
vput(state, RISCVSTATE_READ_REGS);
}break;*/
case
RISCVSTATE_EXEC_INST
:
{
unsigned
int
instr
=
vget
(
instr
);
unsigned
int
opcode
=
instr
&
0x7f
;
...
...
@@ -832,11 +786,11 @@ DEFINE_FUNC(riscv_core_gen_state, "state, instr, nwReset, imm, ldaddr, lastaddr,
vput
(
state
,
RISCVSTATE_WAIT_LD2
);
}
else
{
vput
(
state
,
RISCVSTATE_READ_
INST
);
vput
(
state
,
RISCVSTATE_READ_
REGS
);
}
}
break
;
case
RISCVSTATE_WAIT_LD2
:
{
vput
(
state
,
RISCVSTATE_READ_
INST
);
vput
(
state
,
RISCVSTATE_READ_
REGS
);
}
break
;
case
RISCVSTATE_WAIT_ST
:
{
unsigned
int
instr
=
vget
(
instr
);
...
...
@@ -845,7 +799,7 @@ DEFINE_FUNC(riscv_core_gen_state, "state, instr, nwReset, imm, ldaddr, lastaddr,
unsigned
int
func3
;
func3
=
(
instr
>>
12
)
&
0x7
;
opcode
>>=
2
;
vput
(
state
,
RISCVSTATE_READ_
INST
);
vput
(
state
,
RISCVSTATE_READ_
REGS
);
if
(
opcode
==
0x08
)
{
if
(
func3
==
1
&&
(
lastaddr
&
3
)
==
3
)
{
/* sh */
vput
(
state
,
RISCVSTATE_WAIT_ST2
);
...
...
@@ -856,11 +810,11 @@ DEFINE_FUNC(riscv_core_gen_state, "state, instr, nwReset, imm, ldaddr, lastaddr,
}
}
break
;
case
RISCVSTATE_WAIT_ST2
:
{
vput
(
state
,
RISCVSTATE_READ_
INST
);
vput
(
state
,
RISCVSTATE_READ_
REGS
);
}
break
;
case
RISCVSTATE_WAIT_DIV
:
{
if
(
vget
(
divclk
)
==
0
)
vput
(
state
,
RISCVSTATE_READ_
INST
);
vput
(
state
,
RISCVSTATE_READ_
REGS
);
}
break
;
}
}
...
...
@@ -956,7 +910,7 @@ DEFINE_FUNC(riscv_core_gen_write, "nwReset, state, pc, instr, regrddata, regrdda
}
break
;
}
vput
(
writeaddr
,
lastaddr
+
4
);
vput
(
writeaddr
,
(
lastaddr
&
0xfffffffc
)
+
4
);
vput
(
writedata
,
writedata
);
vput
(
writemask
,
writemask
);
}
...
...
@@ -1230,10 +1184,10 @@ MODULE_INIT(riscv_core)
PORT_IN
(
regrddata2
,
32
);
GREG
(
pc
,
32
,
riscv_core_reg_gen_pc
);
GREG
(
instr
,
32
,
riscv_core_reg_gen_instr
);
G
REG
(
write
,
1
,
riscv_core_gen_write
);
G
REG
(
writeaddr
,
32
,
riscv_core_gen_write
);
G
REG
(
writedata
,
32
,
riscv_core_gen_write
);
G
REG
(
writemask
,
4
,
riscv_core_gen_write
);
G
WIRE
(
write
,
1
,
riscv_core_gen_write
);
G
WIRE
(
writeaddr
,
32
,
riscv_core_gen_write
);
G
WIRE
(
writedata
,
32
,
riscv_core_gen_write
);
G
WIRE
(
writemask
,
4
,
riscv_core_gen_write
);
GREG
(
readreg
,
5
,
riscv_core_reg_gen_readreg
);
GREG
(
state
,
4
,
riscv_core_gen_state
);
GREG
(
imm
,
32
,
riscv_core_gen_imm
);
...
...
examples/hdl4se_riscv/hdl4se_riscv_sim/riscv_sim_main_v4.c
浏览文件 @
a94aaacd
...
...
@@ -92,7 +92,7 @@ DEFINE_FUNC(top_gen_ram_dot_wren, "bWriteAddr, wWrite, ") { /* port:ram(ram8kb).
}
END_DEFINE_FUNC
DEFINE_FUNC
(
top_gen_bReadData
,
"bReadAddr_out, bReadDataKey, bReadDataRam, "
)
{
vputs
(
bReadData
,
(((
vgets
(
bReadAddr_out
))
&
(
0xffffff00
))
==
(
0xf0000000
))
?
(
vgets
(
bReadDataKey
))
:
((((
vgets
(
bReadAddr_out
))
&
(
0xff000000
))
==
(
0
))
?
(
vgets
(
bReadDataRam
))
:
(
0
xffffffff
)));
vputs
(
bReadData
,
(((
vgets
(
bReadAddr_out
))
&
(
0xffffff00
))
==
(
0xf0000000
))
?
(
vgets
(
bReadDataKey
))
:
((((
vgets
(
bReadAddr_out
))
&
(
0xff000000
))
==
(
0
))
?
(
vgets
(
bReadDataRam
))
:
(
0
)));
}
END_DEFINE_FUNC
DEFINE_FUNC
(
top_gen_ramaddr
,
"wWrite, bWriteAddr, bReadAddr, "
)
{
...
...
examples/hdl4se_riscv/test_code/console.c
浏览文件 @
a94aaacd
...
...
@@ -500,10 +500,12 @@ static void testmad()
static
void
printhelp
()
{
/*
_puts(" d <addr> \n");
_puts(" b <baudrate> \n");
_puts(" r <addr> <width>\n");
_puts(" w <addr> <value> <width>\n");
*/
}
#define TESTISA 0
...
...
@@ -569,16 +571,6 @@ void testisa()
int
main
(
int
argc
,
char
*
argv
[])
{
#if 0
volatile unsigned int* ledkey = (unsigned int*)0xF0000000;
volatile unsigned int* leddata = (unsigned int*)0xf0000010;
unsigned char ledd[20];
unsigned int count0 = 0;
unsigned int count1 = 0;
unsigned int ctemp;
#endif
*
(
unsigned
int
*
)
0xf0000010
=
0x3f3f0707
;
_buadrateset
(
115200
);
do
{
...
...
examples/hdl4se_riscv/test_code/test.cod
浏览文件 @
a94aaacd
@00000000
37 11 00 00 EF 00
50 29
6F F0 9F FF
37 11 00 00 EF 00
D0 25
6F F0 9F FF
@0000000C
13 01 01 FF 23 26 81 00 13 04 01 01 B7 17 00 00
83 A7
47 EE
93 87 87 00 03 A7 07 00 B7 17 00 00
23 A
6 E7 EE B7 17 00 00 83 A7 C7 EE
93 F7 17 00
83 A7
07 E6
93 87 87 00 03 A7 07 00 B7 17 00 00
23 A
4 E7 E6 B7 17 00 00 83 A7 87 E6
93 F7 17 00
93 B7 17 00 93 F7 F7 0F 13 85 07 00 03 24 C1 00
13 01 01 01 67 80 00 00
@00000054
13 01 01 FF 23 26 81 00 13 04 01 01 B7 17 00 00
83 A7
47 EE
93 87 87 00 03 A7 07 00 B7 17 00 00
23 A
6 E7 EE B7 17 00 00 03 A7 C7 EE
B7 07 01 00
83 A7
07 E6
93 87 87 00 03 A7 07 00 B7 17 00 00
23 A
4 E7 E6 B7 17 00 00 03 A7 87 E6
B7 07 01 00
B3 77 F7 00 93 B7 17 00 93 F7 F7 0F 13 85 07 00
03 24 C1 00 13 01 01 01 67 80 00 00
@000000A0
13 01 01 FE 23 2E 81 00 13 04 01 02 23 26 A4 FE
B7 17 00 00 83 A7
47 EE
93 87 87 00 03 A7 07 00
B7 17 00 00 23 A
6 E7 EE B7 17 00 00 83 A7 C7 EE
93 F7 17 00 63 90 07 02 B7 17 00 00 83 A7
47 EE
B7 17 00 00 83 A7
07 E6
93 87 87 00 03 A7 07 00
B7 17 00 00 23 A
4 E7 E6 B7 17 00 00 83 A7 87 E6
93 F7 17 00 63 90 07 02 B7 17 00 00 83 A7
07 E6
93 87 47 00 03 27 C4 FE 23 A0 E7 00 93 07 00 00
6F 00 80 00 93 07 F0 FF 13 85 07 00 03 24 C1 01
13 01 01 02 67 80 00 00
@00000108
13 01 01 FF 23 26 81 00 13 04 01 01 B7 17 00 00
83 A7
47 EE
93 87 87 00 03 A7 07 00 B7 17 00 00
23 A
6 E7 EE B7 17 00 00 03 A7 C7 EE
B7 07 01 00
B3 77 F7 00 63 9A 07 00 B7 17 00 00 83 A7
47 EE
83 A7
07 E6
93 87 87 00 03 A7 07 00 B7 17 00 00
23 A
4 E7 E6 B7 17 00 00 03 A7 87 E6
B7 07 01 00
B3 77 F7 00 63 9A 07 00 B7 17 00 00 83 A7
07 E6
83 A7 07 00 6F 00 80 00 93 07 F0 FF 13 85 07 00
03 24 C1 00 13 01 01 01 67 80 00 00
@00000164
...
...
@@ -145,24 +145,24 @@ B3 07 F7 00 93 87 97 FC 23 24 F4 FE 6F 00 40 01
@00000804
13 01 01 FB 23 26 11 04 23 24 81 04 23 22 21 05
23 20 31 05 23 2E 41 03 23 2C 51 03 13 04 01 05
B7 17 00 00 83 A7
87 EE
93 F7 07 FF 23 2A F4 FC
B7 17 00 00 83 A7
47 E6
93 F7 07 FF 23 2A F4 FC
23 2C 04 FC 6F 00 C0 1B 83 27 44 FD 13 89 07 00
93 09 00 00 93 07 C4 FB 13 07 00 03 93 06 80 00
93 05 09 00 13 86 09 00 13 85 07 00 EF F0 9F BC
93 07 C4 FB 13 85 07 00 EF F0 9F 8F B7 17 00 00
13 85 87 E
4
EF F0 DF 8E 23 2E 04 FC 6F 00 40 0A
13 85 87 E
1
EF F0 DF 8E 23 2E 04 FC 6F 00 40 0A
83 27 44 FD 23 26 F4 FC 03 27 C4 FD 83 27 44 FD
33 07 F7 00 B7 17 00 00 83 A7
87 EE
63 7A F7 00
B7 17 00 00 13 85 C7 E
4
EF F0 9F 8B 6F 00 00 05
33 07 F7 00 B7 17 00 00 83 A7
47 E6
63 7A F7 00
B7 17 00 00 13 85 C7 E
1
EF F0 9F 8B 6F 00 00 05
83 27 C4 FD 03 27 C4 FC B3 07 F7 00 83 C7 07 00
13 8A 07 00 93 0A 00 00 93 07 C4 FB 13 07 00 03
93 06 20 00 93 05 0A 00 13 86 0A 00 13 85 07 00
EF F0 5F B4 93 07 C4 FB 13 85 07 00 EF F0 5F 87
B7 17 00 00 13 85 07 E
5
EF F0 9F 86 03 27 C4 FD
93 07 70 00 63 18 F7 00 B7 17 00 00 13 85 47 E
5
B7 17 00 00 13 85 07 E
2
EF F0 9F 86 03 27 C4 FD
93 07 70 00 63 18 F7 00 B7 17 00 00 13 85 47 E
2
EF F0 1F 85 83 27 C4 FD 93 87 17 00 23 2E F4 FC
03 27 C4 FD 93 07 F0 00 E3 DC E7 F4 B7 17 00 00
13 85 87 E
5
EF F0 DF 82 23 2E 04 FC 6F 00 80 07
13 85 87 E
2
EF F0 DF 82 23 2E 04 FC 6F 00 80 07
83 27 44 FD 23 28 F4 FC 83 27 C4 FD 03 27 04 FD
B3 07 F7 00 03 C7 07 00 93 07 F0 01 63 FA E7 02
83 27 C4 FD 03 27 04 FD B3 07 F7 00 03 C7 07 00
...
...
@@ -171,93 +171,85 @@ B3 07 F7 00 83 C7 07 00 23 0E F4 FA 6F 00 C0 00
93 07 E0 02 23 0E F4 FA A3 0E 04 FA 93 07 C4 FB
13 85 07 00 EF F0 CF FB 83 27 C4 FD 93 87 17 00
23 2E F4 FC 03 27 C4 FD 93 07 F0 00 E3 D2 E7 F8
B7 17 00 00 13 85 C7 E
5
EF F0 8F F9 83 27 44 FD
B7 17 00 00 13 85 C7 E
2
EF F0 8F F9 83 27 44 FD
93 87 07 01 23 2A F4 FC 83 27 44 FD 93 F7 F7 0F
63 80 07 02 83 27 84 FD 93 87 17 00 23 2C F4 FC
03 27 84 FD 93 07 F0 00 E3 D0 E7 E4 6F 00 80 00
13 00 00 00 B7 17 00 00 13 85 07 E
6
EF F0 4F F5
B7 17 00 00 03 27 44 FD 23 A
4 E7 EE
13 00 00 00
13 00 00 00 B7 17 00 00 13 85 07 E
3
EF F0 4F F5
B7 17 00 00 03 27 44 FD 23 A
2 E7 E6
13 00 00 00
83 20 C1 04 03 24 81 04 03 29 41 04 83 29 01 04
03 2A C1 03 83 2A 81 03 13 01 01 05 67 80 00 00
@00000A44
13 01 01 FF 23 26 11 00 23 24 81 00 13 04 01 01
B7 17 00 00 13 85 47 E6 EF F0 8F F0 B7 17 00 00
13 85 47 E7 EF F0 CF EF B7 17 00 00 13 85 87 E8
EF F0 0F EF B7 17 00 00 13 85 C7 E9 EF F0 4F EE
13 00 00 00 83 20 C1 00 03 24 81 00 13 01 01 01
67 80 00 00
@00000A98
13 01 01 FF 23 26 81 00 13 04 01 01 13 00 00 00
03 24 C1 00 13 01 01 01 67 80 00 00
@00000A60
13 01 01 F8 23 2E 11 06 23 2C 81 06 23 2A 21 07
23 28 31 07 23 26 41 07 23 24 51 07 13 04 01 08
23 26 A4 F8 23 24 B4 F8 B7 07 00 F0 93 87 07 01
37 07 3F 3F 13 07 77 70 23 A0 E7 00 B7 17 00 00
83 A7
47 EE
93 87 07 01 13 07 20 1B 23 A0 E7 00
EF F0
4F D2
93 07 05 00 63 88 07 00 B7 17 00 00
13 85
87 EB EF F0 8F E6 EF F0 4F D5
93 07 05 00
83 A7
07 E6
93 87 07 01 13 07 20 1B 23 A0 E7 00
EF F0
CF D5
93 07 05 00 63 88 07 00 B7 17 00 00
13 85
47 E3 EF F0 0F EA EF F0 CF D8
93 07 05 00
E3 8C 07 FE 93 07 04 F9 93 05 70 02 13 85 07 00
EF F0
4F EB 13 00 00 00 B7 17 00 00 13 85 C7 EB
EF F0
CF E3 93 07 04 F9 13 85 07 00 EF F0 0F E3
B7 17 00 00 13 85 07 E
6 EF F0 4F E2
03 47 04 F9
EF F0
CF EE 13 00 00 00 B7 17 00 00 13 85 87 E3
EF F0
4F E7 93 07 04 F9 13 85 07 00 EF F0 8F E6
B7 17 00 00 13 85 07 E
3 EF F0 CF E5
03 47 04 F9
93 07 20 06 63 18 F7 04 93 07 04 F9 93 87 27 00
93 05 00 00 13 85 07 00 EF F0
1F A7
23 20 A4 FC
93 05 00 00 13 85 07 00 EF F0
9F AA
23 20 A4 FC
83 27 04 FC 63 54 F0 02 B7 F7 FA 02 13 87 07 08
83 27 04 FC 33 47 F7 02 B7 17 00 00 83 A7
47 EE
93 87 07 01 23 A0 E7 00 6F 00
40 2A EF F0 1F EB
6F 00
C0 29
03 47 04 F9 93 07 40 06 63 1C F7 02
83 27 04 FC 33 47 F7 02 B7 17 00 00 83 A7
07 E6
93 87 07 01 23 A0 E7 00 6F 00
C0 2A EF F0 9F EE
6F 00
40 2A
03 47 04 F9 93 07 40 06 63 1C F7 02
93 07 04 F9 93 87 27 00 93 05 00 00 13 85 07 00
EF F0
5F B1
23 22 A4 FC 83 27 44 FC 63 58 F0 00
03 27 44 FC B7 17 00 00 23 A
4 E7 EE EF F0 1F C3
6F 00
C0 25
03 47 04 F9 93 07 70 07 63 1C F7 0A
EF F0
DF B4
23 22 A4 FC 83 27 44 FC 63 58 F0 00
03 27 44 FC B7 17 00 00 23 A
2 E7 E6 EF F0 9F C6
6F 00
40 26
03 47 04 F9 93 07 70 07 63 1C F7 0A
93 07 04 F9 93 87 27 00 13 07 C4 FB 93 05 07 00
13 85 07 00 EF F0
1F AD
23 28 A4 FC 83 27 C4 FB
13 07 C4 FB 93 05 07 00 13 85 07 00 EF F0
9F AB
13 85 07 00 EF F0
9F B0
23 28 A4 FC 83 27 C4 FB
13 07 C4 FB 93 05 07 00 13 85 07 00 EF F0
1F AF
23 26 A4 FC 83 27 C4 FB 13 07 C4 FB 93 05 07 00
13 85 07 00 EF F0
1F AA
23 24 A4 FC 03 27 84 FC
13 85 07 00 EF F0
9F AD
23 24 A4 FC 03 27 84 FC
93 07 10 00 63 1C F7 00 83 27 04 FD 03 27 C4 FC
13 77 F7 0F 23 80 E7 00 6F 00
4
0 1E 03 27 84 FC
13 77 F7 0F 23 80 E7 00 6F 00
C
0 1E 03 27 84 FC
93 07 20 00 63 1E F7 00 83 27 04 FD 03 27 C4 FC
13 17 07 01 13 57 07 41 23 90 E7 00 6F 00
0
0 1C
13 17 07 01 13 57 07 41 23 90 E7 00 6F 00
8
0 1C
03 27 84 FC 93 07 40 00 63 1A F7 00 83 27 04 FD
03 27 C4 FC 23 A0 E7 00 6F 00
40 1A EF F0 1F DB
6F 00
C0 19 03 47 04 F9 93 07 20 07 63 18
F7 18
03 27 C4 FC 23 A0 E7 00 6F 00
C0 1A EF F0 9F DE
6F 00
40 1A 03 47 04 F9 93 07 20 07 63 1A
F7 18
23 2E 04 FC 93 07 04 F9 93 87 27 00 13 07 84 FB
93 05 07 00 13 85 07 00 EF F0
DF A0
23 2C A4 FC
93 05 07 00 13 85 07 00 EF F0
5F A4
23 2C A4 FC
83 27 84 FB 13 07 84 FB 93 05 07 00 13 85 07 00
EF F0
5F 9F
23 2A A4 FC 03 27 44 FD 93 07 10 00
EF F0
DF A2
23 2A A4 FC 03 27 44 FD 93 07 10 00
63 10 F7 02 83 27 84 FD 83 C7 07 00 23 2E F4 FC
B7 17 00 00 13 85
07 EC EF F0 4F C6
6F 00 80 05
B7 17 00 00 13 85
C7 E3 EF F0 CF C9
6F 00 80 05
03 27 44 FD 93 07 20 00 63 10 F7 02 83 27 84 FD
83 97 07 00 23 2E F4 FC B7 17 00 00 13 85
87 EC
EF F0
CF C3
6F 00 00 03 03 27 44 FD 93 07 40 00
83 97 07 00 23 2E F4 FC B7 17 00 00 13 85
47 E4
EF F0
4F C7
6F 00 00 03 03 27 44 FD 93 07 40 00
63 10 F7 02 83 27 84 FD 83 A7 07 00 23 2E F4 FC
B7 17 00 00 13 85
07 ED EF F0 4F C1
6F 00 80 00
EF F0
DF CE
03 27 44 FD 93 07 10 00 63 0E F7 00
B7 17 00 00 13 85
C7 E4 EF F0 CF C4
6F 00 80 00
EF F0
5F D2
03 27 44 FD 93 07 10 00 63 0E F7 00
03 27 44 FD 93 07 20 00 63 08 F7 00 03 27 44 FD
93 07 40 00 63 1
C F7 0A
83 27 84 FD 13 89 07 00
93 07 40 00 63 1
0 F7 0C
83 27 84 FD 13 89 07 00
93 D7 F7 41 93 89 07 00 93 07 04 F9 13 07 00 03
93 06 80 00 93 05 09 00 13 86 09 00 13 85 07 00
EF F0
0F E8 93 07 04 F9 13 85 07 00 EF F0 0F BB
B7 17 00 00 13 85
87 ED EF F0 4F BA
93 07 04 F9
83 25 C4 FD 13 85 07 00 EF F0
4F CD
93 07 04 F9
13 85 07 00 EF F0
8F B8 B7 17 00 00 13 85 C7 ED
EF F0
CF B7
83 27 C4 FD 13 8A 07 00 93 D7 F7 41
EF F0
8F EB 93 07 04 F9 13 85 07 00 EF F0 8F BE
B7 17 00 00 13 85
47 E5 EF F0 CF BD
93 07 04 F9
83 25 C4 FD 13 85 07 00 EF F0
CF D0
93 07 04 F9
13 85 07 00 EF F0
0F BC B7 17 00 00 13 85 87 E5
EF F0
4F BB
83 27 C4 FD 13 8A 07 00 93 D7 F7 41
93 8A 07 00 83 27 44 FD 93 96 17 00 93 07 04 F9
13 07 00 03 93 05 0A 00 13 86 0A 00 13 85 07 00
EF F0 0F E1 93 07 04 F9 13 85 07 00 EF F0 0F B4
B7 17 00 00 13 85 07 EE EF F0 4F B3 13 00 00 00
EF F0 4F 9D 93 07 05 00 E3 8C 07 FE 6F F0 5F CA
@00000E48
EF F0 8F E4 93 07 04 F9 13 85 07 00 EF F0 8F B7
B7 17 00 00 13 85 C7 E5 EF F0 CF B6 6F 00 80 00
EF F0 5F C4 13 00 00 00 EF F0 4F A0 93 07 05 00
E3 8C 07 FE 6F F0 DF C9
@00000E18
20 20 00 00 20 20 20 00 20 00 00 00 2D 20 00 00
20 20 7C 00 7C 0A 00 00 0A 0D 00 00 20 20 64 20
3C 61 64 64 72 3E 20 0A 00 00 00 00 20 20 62 20
3C 62 61 75 64 72 61 74 65 3E 20 0A 00 00 00 00
20 20 72 20 3C 61 64 64 72 3E 20 3C 77 69 64 74
68 3E 0A 00 20 20 77 20 3C 61 64 64 72 3E 20 3C
76 61 6C 75 65 3E 20 3C 77 69 64 74 68 3E 0A 00
3E 3E 00 00 0A 0D 3A 00 63 68 61 72 20 40 00 00
73 68 6F 72 74 20 40 00 69 6E 74 20 40 00 00 00
20 3D 20 00 28 00 00 00 29 0A 0D 00
@00000EE4
20 20 7C 00 7C 0A 00 00 0A 0D 00 00 3E 3E 00 00
0A 0D 3A 00 63 68 61 72 20 40 00 00 73 68 6F 72
74 20 40 00 69 6E 74 20 40 00 00 00 20 3D 20 00
28 00 00 00 29 0A 0D 00
@00000E60
00 01 00 F0
@00000E
E8
@00000E
64
01 00 00 00
examples/hdl4se_riscv/test_code/test.elf
浏览文件 @
a94aaacd
无法预览此类型文件
examples/hdl4se_riscv/test_code/test.hex
浏览文件 @
a94aaacd
此差异已折叠。
点击以展开。
examples/hdl4se_riscv/test_code/test.info
浏览文件 @
a94aaacd
...
...
@@ -10,7 +10,7 @@ ELF Header:
Version: 0x1
Entry point address: 0x0
Start of program headers: 52 (bytes into file)
Start of section headers:
9044
(bytes into file)
Start of section headers:
8912
(bytes into file)
Flags: 0x0
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
...
...
@@ -34,17 +34,17 @@ Section Headers:
[10] .text._s2d PROGBITS 000005d0 0015d0 0000fc 00 AX 0 0 4
[11] .text._s2h PROGBITS 000006cc 0016cc 000138 00 AX 0 0 4
[12] .text.dispmem PROGBITS 00000804 001804 000240 00 AX 0 0 4
[13] .text.printhelp PROGBITS 00000a44 001a44 0000
54
00 AX 0 0 4
[14] .text.main PROGBITS 00000a
98 001a98 0003b0
00 AX 0 0 4
[15] .rodata PROGBITS 00000e
48 001e48 00009c
00 A 0 0 4
[16] .sdata._uartaddr PROGBITS 00000e
e4 001ee4
000004 00 WA 0 0 4
[17] .sdata.displ[...] PROGBITS 00000e
e8 001ee8
000004 00 WA 0 0 4
[18] .sbss NOBITS 00000e
ec 001eec
000004 00 WA 0 0 4
[19] .comment PROGBITS 00000000 001e
ec
000012 01 MS 0 0 1
[20] .riscv.attributes RISCV_ATTRIBUTE 00000000 001e
fe
000021 00 0 0 1
[21] .symtab SYMTAB 00000000 001
f20
000280 10 22 37 4
[22] .strtab STRTAB 00000000 0021
a0
000097 00 0 0 1
[23] .shstrtab STRTAB 00000000 002
237
00011a 00 0 0 1
[13] .text.printhelp PROGBITS 00000a44 001a44 0000
1c
00 AX 0 0 4
[14] .text.main PROGBITS 00000a
60 001a60 0003b8
00 AX 0 0 4
[15] .rodata PROGBITS 00000e
18 001e18 000048
00 A 0 0 4
[16] .sdata._uartaddr PROGBITS 00000e
60 001e60
000004 00 WA 0 0 4
[17] .sdata.displ[...] PROGBITS 00000e
64 001e64
000004 00 WA 0 0 4
[18] .sbss NOBITS 00000e
68 001e68
000004 00 WA 0 0 4
[19] .comment PROGBITS 00000000 001e
68
000012 01 MS 0 0 1
[20] .riscv.attributes RISCV_ATTRIBUTE 00000000 001e
7a
000021 00 0 0 1
[21] .symtab SYMTAB 00000000 001
e9c
000280 10 22 37 4
[22] .strtab STRTAB 00000000 0021
1c
000097 00 0 0 1
[23] .shstrtab STRTAB 00000000 002
1b3
00011a 00 0 0 1
Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings), I (info),
L (link order), O (extra OS processing required), G (group), T (TLS),
...
...
@@ -55,7 +55,7 @@ There are no section groups in this file.
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00000000 0x00000000 0x00e
ec 0x00ef0
RWE 0x1000
LOAD 0x001000 0x00000000 0x00000000 0x00e
68 0x00e6c
RWE 0x1000
Section to Segment mapping:
Segment Sections...
...
...
@@ -83,16 +83,16 @@ Symbol table '.symtab' contains 40 entries:
11: 000006cc 0 SECTION LOCAL DEFAULT 11 .text._s2h
12: 00000804 0 SECTION LOCAL DEFAULT 12 .text.dispmem
13: 00000a44 0 SECTION LOCAL DEFAULT 13 .text.printhelp
14: 00000a
98
0 SECTION LOCAL DEFAULT 14 .text.main
15: 00000e
4
8 0 SECTION LOCAL DEFAULT 15 .rodata
16: 00000e
e4
0 SECTION LOCAL DEFAULT 16 .sdata._uartaddr
17: 00000e
e8
0 SECTION LOCAL DEFAULT 17 .sdata.displayaddr
18: 00000e
ec
0 SECTION LOCAL DEFAULT 18 .sbss
14: 00000a
60
0 SECTION LOCAL DEFAULT 14 .text.main
15: 00000e
1
8 0 SECTION LOCAL DEFAULT 15 .rodata
16: 00000e
60
0 SECTION LOCAL DEFAULT 16 .sdata._uartaddr
17: 00000e
64
0 SECTION LOCAL DEFAULT 17 .sdata.displayaddr
18: 00000e
68
0 SECTION LOCAL DEFAULT 18 .sbss
19: 00000000 0 SECTION LOCAL DEFAULT 19 .comment
20: 00000000 0 SECTION LOCAL DEFAULT 20 .riscv.attributes
21: 00000000 0 FILE LOCAL DEFAULT ABS console.c
22: 00000e
e4
4 OBJECT LOCAL DEFAULT 16 _uartaddr
23: 00000e
ec
4 OBJECT LOCAL DEFAULT 18 _uartstate
22: 00000e
60
4 OBJECT LOCAL DEFAULT 16 _uartaddr
23: 00000e
68
4 OBJECT LOCAL DEFAULT 18 _uartstate
24: 0000000c 72 FUNC LOCAL DEFAULT 2 _canputchar
25: 00000054 76 FUNC LOCAL DEFAULT 3 _haschar
26: 000000a0 104 FUNC LOCAL DEFAULT 4 _putchar
...
...
@@ -103,12 +103,12 @@ Symbol table '.symtab' contains 40 entries:
31: 00000428 424 FUNC LOCAL DEFAULT 9 _h2s
32: 000005d0 252 FUNC LOCAL DEFAULT 10 _s2d
33: 000006cc 312 FUNC LOCAL DEFAULT 11 _s2h
34: 00000e
e8
4 OBJECT LOCAL DEFAULT 17 displayaddr
34: 00000e
64
4 OBJECT LOCAL DEFAULT 17 displayaddr
35: 00000804 576 FUNC LOCAL DEFAULT 12 dispmem
36: 00000a44
84
FUNC LOCAL DEFAULT 13 printhelp
36: 00000a44
28
FUNC LOCAL DEFAULT 13 printhelp
37: 00000000 12 FUNC GLOBAL DEFAULT 1 __start
38: 00000a
98 944
FUNC GLOBAL DEFAULT 14 main
39: 00000e
f0
0 NOTYPE GLOBAL DEFAULT 18 _end
38: 00000a
60 952
FUNC GLOBAL DEFAULT 14 main
39: 00000e
6c
0 NOTYPE GLOBAL DEFAULT 18 _end
No version information found in this file.
Attribute Section: riscv
...
...
examples/hdl4se_riscv/test_code/test.mif
浏览文件 @
a94aaacd
此差异已折叠。
点击以展开。
examples/hdl4se_riscv/test_code/test.txt
浏览文件 @
a94aaacd
此差异已折叠。
点击以展开。
examples/hdl4se_riscv/test_code/test_new.c
浏览文件 @
a94aaacd
此差异已折叠。
点击以展开。
examples/hdl4se_riscv/verilog/altera/ram/ram4kB.v
浏览文件 @
a94aaacd
...
...
@@ -90,7 +90,7 @@ module ram4kB (
altsyncram_component
.
byte_size
=
8
,
altsyncram_component
.
clock_enable_input_a
=
"BYPASS"
,
altsyncram_component
.
clock_enable_output_a
=
"BYPASS"
,
altsyncram_component
.
init_file
=
"../
../../
test_code/test.mif"
,
altsyncram_component
.
init_file
=
"../test_code/test.mif"
,
altsyncram_component
.
intended_device_family
=
"Cyclone V"
,
altsyncram_component
.
lpm_hint
=
"ENABLE_RUNTIME_MOD=NO"
,
altsyncram_component
.
lpm_type
=
"altsyncram"
,
...
...
@@ -129,7 +129,7 @@ endmodule
// Retrieval info: PRIVATE: JTAG_ENABLED NUMERIC "0"
// Retrieval info: PRIVATE: JTAG_ID STRING "NONE"
// Retrieval info: PRIVATE: MAXIMUM_DEPTH NUMERIC "0"
// Retrieval info: PRIVATE: MIFfilename STRING "../
../../
test_code/test.mif"
// Retrieval info: PRIVATE: MIFfilename STRING "../test_code/test.mif"
// Retrieval info: PRIVATE: NUMWORDS_A NUMERIC "1024"
// Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "0"
// Retrieval info: PRIVATE: READ_DURING_WRITE_MODE_PORT_A NUMERIC "3"
...
...
@@ -147,7 +147,7 @@ endmodule
// Retrieval info: CONSTANT: BYTE_SIZE NUMERIC "8"
// Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "BYPASS"
// Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_A STRING "BYPASS"
// Retrieval info: CONSTANT: INIT_FILE STRING "../
../../
test_code/test.mif"
// Retrieval info: CONSTANT: INIT_FILE STRING "../test_code/test.mif"
// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone V"
// Retrieval info: CONSTANT: LPM_HINT STRING "ENABLE_RUNTIME_MOD=NO"
// Retrieval info: CONSTANT: LPM_TYPE STRING "altsyncram"
...
...
examples/hdl4se_riscv/verilog/altera/ram/ram4kB_bb.v
浏览文件 @
a94aaacd
...
...
@@ -78,7 +78,7 @@ endmodule
// Retrieval info: PRIVATE: JTAG_ENABLED NUMERIC "0"
// Retrieval info: PRIVATE: JTAG_ID STRING "NONE"
// Retrieval info: PRIVATE: MAXIMUM_DEPTH NUMERIC "0"
// Retrieval info: PRIVATE: MIFfilename STRING "../
../../
test_code/test.mif"
// Retrieval info: PRIVATE: MIFfilename STRING "../test_code/test.mif"
// Retrieval info: PRIVATE: NUMWORDS_A NUMERIC "1024"
// Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "0"
// Retrieval info: PRIVATE: READ_DURING_WRITE_MODE_PORT_A NUMERIC "3"
...
...
@@ -96,7 +96,7 @@ endmodule
// Retrieval info: CONSTANT: BYTE_SIZE NUMERIC "8"
// Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "BYPASS"
// Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_A STRING "BYPASS"
// Retrieval info: CONSTANT: INIT_FILE STRING "../
../../
test_code/test.mif"
// Retrieval info: CONSTANT: INIT_FILE STRING "../test_code/test.mif"
// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone V"
// Retrieval info: CONSTANT: LPM_HINT STRING "ENABLE_RUNTIME_MOD=NO"
// Retrieval info: CONSTANT: LPM_TYPE STRING "altsyncram"
...
...
examples/hdl4se_riscv/verilog/riscv_core_v4.v
浏览文件 @
a94aaacd
此差异已折叠。
点击以展开。
examples/hdl4se_riscv/verilog/riscv_sim_v4.v
浏览文件 @
a94aaacd
...
...
@@ -107,7 +107,7 @@ module top(input wClk, nwReset);
assign
bReadData
=
((
bReadAddr_out
&
32'hffffff00
)
==
32'hf0000000
)
?
bReadDataKey
:
(
((
bReadAddr_out
&
32'hff000000
)
==
32'h00000000
)
?
bReadDataRam
:
(
32'h
ffffffff
)
((
bReadAddr_out
&
32'hff000000
)
==
32'h00000000
)
?
bReadDataRam
:
(
32'h
0
)
);
wire
[
29
:
0
]
ramaddr
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录