1 |
5 |
sergeykhbr |
{
|
2 |
|
|
'GlobalSettings':{
|
3 |
|
|
'SimEnable':false,
|
4 |
|
|
'GUI':true,
|
5 |
|
|
'ScriptFile':'',
|
6 |
|
|
'Description':'This configuration instantiates functional RISC-V model'
|
7 |
|
|
},
|
8 |
|
|
'Services':[
|
9 |
|
|
{'Class':'GuiPluginClass','Instances':[
|
10 |
|
|
{'Name':'gui0','Attr':[
|
11 |
|
|
['LogLevel',4],
|
12 |
|
|
['WidgetsConfig',{
|
13 |
|
|
'Serial':'port1',
|
14 |
|
|
'AutoComplete':'autocmd0',
|
15 |
|
|
'SocInfo':'info0',
|
16 |
|
|
'PollingMs':250,
|
17 |
|
|
'EventsLoopMs':10,
|
18 |
|
|
'RegsViewWidget':{
|
19 |
|
|
'RegList':[['ra', 's0', 'a0'],
|
20 |
|
|
['sp', 's1', 'a1'],
|
21 |
|
|
['gp', 's2', 'a2'],
|
22 |
|
|
['tp', 's3', 'a3'],
|
23 |
|
|
['' , 's4', 'a4'],
|
24 |
|
|
['t0', 's5', 'a5'],
|
25 |
|
|
['t1', 's6', 'a6'],
|
26 |
|
|
['t2', 's7', 'a7'],
|
27 |
|
|
['t3', 's8', ''],
|
28 |
|
|
['t4', 's9', ''],
|
29 |
|
|
['t5', 's10', 'pc'],
|
30 |
|
|
['t6', 's11', 'npc']],
|
31 |
|
|
'RegWidthBytes':8,
|
32 |
|
|
}
|
33 |
|
|
}],
|
34 |
|
|
['SocInfo','info0'],
|
35 |
|
|
['CommandExecutor','cmdexec0']
|
36 |
|
|
]}]},
|
37 |
|
|
{'Class':'SerialDbgServiceClass','Instances':[
|
38 |
|
|
{'Name':'uarttap','Attr':[
|
39 |
|
|
['LogLevel',1],
|
40 |
|
|
['Timeout',1000],
|
41 |
|
|
['Port','port1']]}]},
|
42 |
|
|
{'Class':'ComPortServiceClass','Instances':[
|
43 |
|
|
{'Name':'port1','Attr':[
|
44 |
|
|
['LogLevel',2],
|
45 |
|
|
['Enable',true],
|
46 |
|
|
['UartSim',''],
|
47 |
|
|
['LogFile','uart0.log'],
|
48 |
|
|
['ComPortName','COM3'],
|
49 |
|
|
['ComPortSpeed',115200]]}]},
|
50 |
|
|
{'Class':'ElfReaderServiceClass','Instances':[
|
51 |
|
|
{'Name':'loader0','Attr':[
|
52 |
|
|
['LogLevel',4],
|
53 |
|
|
['SourceProc','src0']]}]},
|
54 |
|
|
{'Class':'ConsoleServiceClass','Instances':[
|
55 |
|
|
{'Name':'console0','Attr':[
|
56 |
|
|
['LogLevel',4],
|
57 |
|
|
['Enable',true],
|
58 |
|
|
['StepQueue','core0'],
|
59 |
|
|
['AutoComplete','autocmd0'],
|
60 |
|
|
['CommandExecutor','cmdexec0'],
|
61 |
|
|
['DefaultLogFile','default.log'],
|
62 |
|
|
['Signals','gpio0'],
|
63 |
|
|
['InputPort','port1']]}]},
|
64 |
|
|
{'Class':'AutoCompleterClass','Instances':[
|
65 |
|
|
{'Name':'autocmd0','Attr':[
|
66 |
|
|
['LogLevel',4],
|
67 |
|
|
['SocInfo','info0']
|
68 |
|
|
['HistorySize',64],
|
69 |
|
|
['History',[
|
70 |
|
|
'csr MCPUID',
|
71 |
|
|
'csr MTIME',
|
72 |
|
|
'read 0xfffff004 128',
|
73 |
|
|
'loadelf helloworld'
|
74 |
|
|
]]
|
75 |
|
|
]}]},
|
76 |
|
|
{'Class':'CmdExecutorClass','Instances':[
|
77 |
|
|
{'Name':'cmdexec0','Attr':[
|
78 |
|
|
['LogLevel',4],
|
79 |
|
|
['Tap','uarttap'],
|
80 |
|
|
['SocInfo','info0']
|
81 |
|
|
]}]},
|
82 |
|
|
{'Class':'SocInfoClass','Instances':[
|
83 |
|
|
{'Name':'info0','Attr':[
|
84 |
|
|
['LogLevel',4],
|
85 |
|
|
['PnpBaseAddress',0xFFFFF000],
|
86 |
|
|
['GpioBaseAddress',0x80000000],
|
87 |
|
|
['DsuBaseAddress',0x80080000],
|
88 |
|
|
['ListRegs',[['zero',8,0x08000],['ra',8,0x08008],['sp',8,0x08010],['gp',8,0x08018],
|
89 |
|
|
['tp',8,0x08020],['t0',8,0x08028],['t1',8,0x08030],['t2',8,0x08038],
|
90 |
|
|
['s0',8,0x08040],['s1',8,0x08048],['a0',8,0x08050],['a1',8,0x08058],
|
91 |
|
|
['a2',8,0x08060],['a3',8,0x08068],['a4',8,0x08070],['a5',8,0x08078],
|
92 |
|
|
['a6',8,0x08080],['a7',8,0x08088],['s2',8,0x08090],['s3',8,0x08098],
|
93 |
|
|
['s4',8,0x080A0],['s5',8,0x080A8],['s6',8,0x080B0],['s7',8,0x080B8],
|
94 |
|
|
['s8',8,0x080C0],['s9',8,0x080C8],['s10',8,0x080D0],['s11',8,0x080D8],
|
95 |
|
|
['t3',8,0x080E0],['t4',8,0x080E8],['t5',8,0x080F0],['t6',8,0x080F8],
|
96 |
|
|
['pc',8,0x08100,'Instruction Pointer'],
|
97 |
|
|
['npc',8,0x08108,'Next IP']]],
|
98 |
|
|
['ListCSR',[
|
99 |
|
|
['MISA',8,0xf10,'Architecture and supported set of instructions'],
|
100 |
|
|
['MVENDORID',8,0xf11,'Vecndor ID'],
|
101 |
|
|
['MARCHID',8,0xf12,'Architecture ID'],
|
102 |
|
|
['MIMPLEMENTATIONID',8,0xf13,'Implementation ID'],
|
103 |
|
|
['MHARTID',8,0xf14,'Thread ID'],
|
104 |
|
|
['MTIME',8,0x701,'Machine wall-clock time.'],
|
105 |
|
|
['MSTATUS',8,0x300,'Machine mode status register.'],
|
106 |
|
|
['MIE',8,0x304,'Machine interrupt enable register.'],
|
107 |
|
|
['MTVEC',8,0x305,'Machine mode trap vector register.'],
|
108 |
|
|
['MSCRATCH',8,0x340,'Machine mode scratch register.'],
|
109 |
|
|
['MEPC',8,0x341,'Machine exception program counter'],
|
110 |
|
|
['MCAUSE',8,0x342,'Machine cause trap register'],
|
111 |
|
|
['MBADADDR',8,0x343,'Machine mode bad address register'],
|
112 |
|
|
['MIP',8,0x344,'Machine mode interrupt pending bits register']
|
113 |
|
|
]]]}]},
|
114 |
|
|
{'Class':'RiscvSourceServiceClass','Instances':[
|
115 |
|
|
{'Name':'src0','Attr':[
|
116 |
|
|
['LogLevel',4]]}]},
|
117 |
|
|
{'Class':'SimplePluginClass','Instances':[
|
118 |
|
|
{'Name':'example0','Attr':[
|
119 |
|
|
['LogLevel',4],
|
120 |
|
|
['attr1','This is test attr value']]}]},
|
121 |
|
|
]
|
122 |
|
|
}
|