DIRCjXa=5jXa=5!U㒏鼯~e .gitignorejXa=5jXa=5!=7rl}op HowToTest.mdjXaz?:jXaz?:!Mp-/m<5ZR͈LICENSEjXaz?:jXaz?:! l`v.N\ Ø 毋1 README.mdjXaz?:jXaz?:!_=9P3 ō6WarRISCado.gprjjXaz?:jXaz?:!sH1Z:P#td bin-gen.shjXaz?:jXaz?:! {P[<_>=z/0boards/nano9k/constraints.cstjXaz?:jXaz?:!.|3a`l2g;z L7ks boards/nano9k/nano9k.lushay.jsonjXaz?:jXaz?:!] T] PA)pRmboards/nano9k/top.vjXaz?:jXaz?:!XybRBd:$R&boards/primer20k/primer20k.lushay.jsonjXaz?:jXaz?:!uhYz 38boards/primer20k/top.vjXaz?:jXaz?:!;q&v)K8 c-to-as.shjXaz?:jXaz?:!sC ͏ WSocodes/CallFunc.cjXaz?:jXaz?:!o1Z>4ncodes/DivFunc.cjXaz?:jXaz?:!: (oHcodes/EmptyFunc.cjXaz?:jXaz?:!7%/΋I codes/InsertFunc.cjXaz?:jXaz?:! q@[_T0ҬesAjcodes/MultFunc.cjXaz?:jXaz?:!#"M>E# `U׿Gcodes/SubFunc.cjXaz?:jXaz?:!(x38\6lmxncodes/SumFunc.cjXaz?:jXaz?:!*-걺՗c )wt0ΔAcodes/assembly/CallFunc.sjXaz?:jXaz?:!+[7nCz:P*ۗccodes/bin/DivFuncjXaz?:jXaz?:!dy[3Gī3codes/bin/EmptyFuncjXaz?:jXaz?:!ᨮXKniw Acodes/bin/InsertFuncjXaz?:jXaz?:!@ ?p% @ߥ docs/RVC.mdjXaHjXaH!u4YK ˅ӇEc$docs/Tang_Nano_9K_3672_schematic.pdfjXaHjXaH!upɻKHSfFE"F&docs/entrega-1/relatorio-entrega-1.pdfjXaRjXaR!vS)ՎR 6RK#docs/entrega-1/slides-entrega-1.pdfjXaRjXaR!v1@W% ihJ&docs/entrega-2/relatorio-entrega-2.pdfjXaRjXaR!v ̎l ebrU]OB>#docs/entrega-2/slides-entrega-2.pdfjXaRjXaR!v9x5:X_ؿv&docs/entrega-3/relatorio-entrega-3.pdfjXaRjXaR!v nn0xH~˧ac#docs/entrega-3/slides-entrega-3.pdfjXaRjXaR!v⛲CK)wZS&docs/entrega-4/Entrega 4 - Parte I.pdfjXaRjXaR!v⛲CK)wZS'docs/entrega-4/Entrega 4 - Parte II.pdfjXa1\3jXa1\3!v6,՟CעUd{]&docs/entrega-4/relatorio-entrega-4.pdfjXa1\3jXa1\3!v)ҖlAAPXUY*docs/entrega-4/slides-entrega-4-Parte2.pdfjXa1\3jXa1\3!v!vH/0cMR*docs/entrega-4/slides-entrega-4-parte1.pdfjXanejXane!v"S<hy:xdocs/riscv-spec-20191213.pdfjXanejXane!OU~x5k fix-asm.pyjXanejXane!`w,UrYYElv#get_all_files.pyjXanejXane!d%rflU$Wt linker.ldjXanejXane!v%{P[<_>=z/0project/constraints.cstjXanejXane!v'%+i=V-ww  project/cpu.vjXanejXane!vr M<":PlOVrproject/cpu/alu.vjXanejXane!vyJB2tɩXaTƼsV3project/cpu/decode.vjXanejXane!v~?sG簿քS\sproject/cpu/divider.vjXanejXane!vlWBIY_)&|project/cpu/execute.vjXanejXane!v/·]Gͪo9xx eMproject/cpu/fetch.vjXanejXane!v lUZ<?8K9f~j?project/cpu/memory.vjXanejXane!v8ŷ}1ɃA^(project/cpu/register_bank.vjXanejXane!vaT=wproject/cpu/writeback.vjXanejXane!v FncTOiS 1aMzproject/flash.vjXanejXane!v=pV)|k~7g project/init_rom.txtjXanejXane!v=pV)|k~7g project/init_uart.txtjXanejXane!v,yxvQ]VDQm project/mmu.vjXanejXane!vf #~۶Aproject/peripheral/buttons.vjXanejXane!vET³ "VvX{+@'project/peripheral/peripheral_manager.vjXanejXane!v =b%L~=Iv`h\ project/peripheral/pwm_port.vjXanejXane!vs@-> km project/ram.vjXanejXane!v}='pMS project/rom.vjXanejXane!vD2XAKsGiز project/top.vjXanejXane!vp ˕)"~޴m6project/uart.vjXanejXane!x+P֍4^܎$YNxuk result.odsjXanejXane!c wVS n03 result.txtjXanejXane! K%c<<send_serial.pyjXanejXane!kJ/% ˿Isplit_result.pyjXanejXane!LsDAsXtest.pyjXanejXane!vF-l Y\d^Gtestbenches/README.mdjXanejXane!v 1\5b\-r!testbenches/alu_tb.vjXanejXane!v~;T/b7 L#6|testbenches/cpu_tb.txtjXanejXane!v]%GByDeU0-Ztestbenches/cpu_tb.vjXanejXane!v'2xnuemx̯qtestbenches/divider_tb.vjXanejXane!v"iuKMdu1testbenches/fetch_decode_tb.vjXanejXane!vqh& aqn(testbenches/fetch_tb.vjXanejXane!v MEç ['F testbenches/if_de_ex_tb.vjXanejXane!vB >_zX0c"5testbenches/if_de_ex_wb_tb.txtjXanejXane!vRHT}{CE#_testbenches/if_de_ex_wb_tb.vjXanejXane!v+  5)2k) 2;testbenches/instruction_tb.vjXanejXane!vxڲ1"'-"testbenches/instruction_tb_rom.txtjXanejXane!vfTywn 1w}Ptestbenches/memory_tb.vjXanejXane!vUtTHSNRtestbenches/pwm_tb.vjXanejXane!v#vy#\徭1 |q+κtestbenches/pwm_tb_code.sjXanejXane!v,$.L~1vfD~< testbenches/pwm_tb_rom.txtjXaojXao!v+8dTj,/testbenches/ram_tb.vjXaojXao!vt.PbI>8Rtestbenches/rom_tb.vjXaojXao!v8Ι/>Wtestbenches/utils/imports.vjXaojXao!vt Wڐ" s㣃testbenches/writeback_tb.vjXaojXao!wO<.mJ& ޵tests/TestButton.sjXaojXao!wG sÏe9u@ttests/TestPWM.sjXaojXao!wXk M+,|PRk tests/TestsArith.sjXaojXao!w!kB s~ـs;4ӑtests/TestsArithNoDataHazard.sjXaojXao!w$Y Xτ!fCtests/TestsAtomic-2.sjXaojXao!w,>VMPXbCG*tests/TestsAtomic.sjXaojXao!w4ϕC{š#IWotests/TestsBranches.sjXaojXao!w6 5swd;)ǥkiY!tests/TestsBranchesNoDataHazard.sjXaojXao!w7{AU[De`ⲿentests/TestsCPU.sjXaojXao!w9G@eԭd@A tests/TestsCall.sjXaojXao!w:) 9 ^Wtests/TestsCallNoDataHazard.sjXaojXao!wCkt-K"i2tests/TestsCompare.sjXaojXao!wEN;luxSC+ 6WQ tests/TestsCompareNoDataHazard.sjXaojXao!wTa+VR ƂW"tests/TestsDiv.sjXaojXao!wWX6h= ALlIihtests/TestsJumpLink.sjXaojXao!wX>ǜRYtrנ xStests/TestsLoadsStores.sjXaojXao!w^$N%^5B=L$tests/TestsLoadsStoresNoDataHazard.sjXaojXao!w_w 6fW~tests/TestsLogical.sjXaojXao!w`tr6cg(>w tests/TestsLogicalNoDataHazard.sjXaojXao!wbi2.-xmtests/TestsMult.sjXaojXao!wc :Iρg9?5tests/TestsRV32C.sjXaojXao!wf_:\>Rh= tests/TestsRV32IA.sjXaojXao!wj #ֲ-~{.r2tests/TestsRV32IM.sjXaojXao!wp [yf^G4u_tests/TestsRegisters.sjXaojXao!wtjVS|QOMWNtests/TestsSavedRegisters.sjXaojXao!wv= 2 B6L0:uQb/Xtests/TestsShifts.sjXaojXao!ww%Y`ǨS&qaTtests/TestsShiftsNoDataHazard.sjXaojXao!wyF8XlLUTr1]yY2tests/TestsTempRegisters.sjXaojXao!w}HɅwfNCtests/bin/TestPWMjXaojXao!w( l[q`Йtests/bin/TestsArithjXaojXao!wTХұX)6r\L ذ; tests/bin/TestsArithNoDataHazardjXaojXao!w8?*S5tDv]c8'tests/bin/TestsAtomicjXaojXao!wdh tests/bin/TestsAtomic-2jXaojXao!wl=~[.)رs%Utests/bin/TestsBranchesjXaojXao!wtZ !L$3~6#tests/bin/TestsBranchesNoDataHazardjXaojXao!wd; #`V萦˄tests/bin/TestsCPUjXaojXao!w8(hI4R)xKtests/bin/TestsCalljXaojXao!whL磽)UuEtests/bin/TestsCallNoDataHazardjXaojXao!w(!5ثnIYCAtests/bin/TestsComparejXaojXao!w0Bϡ[Ezhl7{"tests/bin/TestsCompareNoDataHazardjXaojXao!w 9-$Y꜃gbAtests/bin/TestsDivjXaojXao!wD=KR =")tests/bin/TestsJumpLinkjXaojXao!w(qk_j.A3kB'{=pEtests/bin/TestsLoadsStoresjXaojXao!w@Ħ֓&1{|&tests/bin/TestsLoadsStoresNoDataHazardjXaojXao!w(@דm%7R}*xtests/bin/TestsLogicaljXaojXao!wX~β5zodIn7"tests/bin/TestsLogicalNoDataHazardjXaojXao!w 4ѭy1œ"Kںtests/bin/TestsMultjXaojXao!w`CVĴbZV16[)'tests/bin/TestsRV32IAjXaojXao!wzC55LCBĥ:tests/bin/TestsRV32IMjXaojXao!wp7kFS)N8dptests/bin/TestsRegistersjXaojXao!w8nߢv#nl8tests/bin/TestsSavedRegistersjXaojXao!w ~qhi8;*E )tests/bin/TestsShiftsjXaojXao!w@X  0 /k!tests/bin/TestsShiftsNoDataHazardjXaojXao!w$ Fl/ U:a[tests/bin/TestsTempRegistersjXaojXao!w7p6QI|vԔk tests/binaries/TestButton.hexjXaojXao!wgcS_~ohe:򵕎#tests/binaries/TestPWM.hexjXaojXao!wZ1F0*[YJ;D-tests/binaries/TestsArith.hexjXaojXao!w\I~R~>`V-_)tests/binaries/TestsArithNoDataHazard.hexjXaojXao!w _%Bd@Bة3 tests/binaries/TestsBranches.hexjXaojXao!w0Q:' ݖAQ-tests/binaries/TestsBranchesNoDataHazards.hexjXaojXao!w(`i"oK.lEtests/binaries/TestsCPU.hexjXaojXao!wI^ڪuY`t"[J tests/binaries/TestsCall.hexjXaojXao!w*6al1cDžK%qH(tests/binaries/TestsCallNoDataHazard.hexjXaojXao!wZ\b'ҧ8_UԖtests/binaries/TestsCompare.hexjXaojXao!wlɻNspRgG1|2+tests/binaries/TestsCompareNoDataHazard.hexjXaojXao!w6oUv|:V#(srO5!tests/binaries/TestsJumpLinks.hexjXaojXao!wZ)C>6l}(4Ojƀw#tests/binaries/TestsLoadsStores.hexjXaojXao!w-LimZ^zx+F/tests/binaries/TestsLoadsStoresNoDataHazard.hexjXaojXao!wZp$kݐ w6_tests/binaries/TestsLogical.hexjXaojXao!w]%Tkq/+tests/binaries/TestsLogicalNoDataHazard.hexjXaojXao!wتXѠ-cP09'Vtests/binaries/TestsRV32IA.hexjXaojXao!w8ᱍyh΍tests/binaries/TestsRV32IM.hexjXaojXao!w~%>k?m1Quutests/binaries/TestsRVC.hexjXaojXao!wg\4#RV)!tests/binaries/TestsRegisters.hexjXaojXao!wHS0]B(Ni~7ZPtests/binaries/TestsShifts.hexjXaojXao!wդaC#CQe6v9*tests/binaries/TestsShiftsNoDataHazard.hexjXaojXao!wܯ&Ae|@Ptests/binaries/demo_code.hexjXaojXao!w}+NǙúZʂtests/demo_code.sjXaojXao!xUظч rk5탸Ź_-tests/hex/TestPWM.hexjXaojXao!xRbhy`wtests/hex/TestsArith.hexjXaojXao!x dg $ڄ%L$tests/hex/TestsArithNoDataHazard.hexjXaojXao!x1M5j1k-Owtests/hex/TestsAtomic-2.hexjXaojXao!xrA't Bg"%YUq@W(tests/hex/TestsAtomic.hexjXaojXao!x,&C@)j/mBtests/hex/TestsBranches.hexjXaojXao!x,1ƴ곟8Ѳ x'tests/hex/TestsBranchesNoDataHazard.hexjXaojXao!x3SN4qtests/hex/TestsCPU.hexjXaojXao!x5r?xiJ)1Htests/hex/TestsCall.hexjXaojXao!x6 LrDpN4-dJ#tests/hex/TestsCallNoDataHazard.hexjXaojXao!x7R'xXA1Rي99?tests/hex/TestsCompare.hexjXaojXao!x8b:K \ w+0&tests/hex/TestsCompareNoDataHazard.hexjXaojXao!x9BTa5V5Ĥ漿tests/hex/TestsDiv.hexjXaojXao!xA1M_7',6X$ߨ`tests/hex/TestsJumpLink.hexjXaojXao!xBRwKO9#&2rtests/hex/TestsLoadsStores.hexjXaojXao!xC Iv\)N ?*tests/hex/TestsLoadsStoresNoDataHazard.hexjXaojXao!xDRKFH;tests/hex/TestsLogical.hexjXaojXao!xF.&WB'o߬dJ&tests/hex/TestsLogicalNoDataHazard.hexjXaojXao!xJBV5 nI^}p9tests/hex/TestsMult.hexjXaojXao!xR⛲CK)wZStests/hex/TestsRV32C.hexjXaojXao!xVjZ- *dEx<tests/hex/TestsRV32IA.hexjXaojXao!x[İ5 c@*L5<tests/hex/TestsRV32IM.hexjXaojXao!x\ESn4tests/hex/TestsRegisters.hexjXaojXao!x]rFxݍK !tests/hex/TestsSavedRegisters.hexjXaojXao!xbB#k 'bX| !4tests/hex/TestsShifts.hexjXaojXao!xgr}}0,JXOމvI7T%tests/hex/TestsShiftsNoDataHazard.hexjXaojXao!xiJ8 3tFˏ1 tests/hex/TestsTempRegisters.hexjXaojXao!xkYhH%dN6;tests/out/TestButton.outjXaojXao!xlYu@=(\`i0 tests/out/TestPWM.outjXaojXao!xmYC`j @W*G_9tests/out/TestsArith.outjXaojXao!xoY@OL5[n+_$tests/out/TestsArithNoDataHazard.outjXaojXao!xqY>ys`W1+btests/out/TestsBranches.outjXaojXao!xsY>ys`W1+b'tests/out/TestsBranchesNoDataHazard.outjXaojXao!xuY}`(ȔYL Qtests/out/TestsCall.outjXaojXao!xvY}`(ȔYL Q#tests/out/TestsCallNoDataHazard.outjXaojXao!xyY}tLzgRŦtests/out/TestsCompare.outjXaojXao!x~Y}tLzgRŦ&tests/out/TestsCompareNoDataHazard.outjXaojXao!xYVB#x1iuURNtests/out/TestsJumpLinks.outjXaojXao!xYklv@5}faKwtests/out/TestsLoadsStores.outjXaojXao!xYklv@5}faKw*tests/out/TestsLoadsStoresNoDataHazard.outjXaojXao!xYwc92Kkv+tests/out/TestsLogical.outjXaojXao!xYwc92Kkv+&tests/out/TestsLogicalNoDataHazard.outjXaojXao!xYrv6`v(5tests/out/TestsRegisters.outjXaojXao!xY Ws^ >tests/out/TestsShifts.outjXaojXao!xY Ws^ >%tests/out/TestsShiftsNoDataHazard.outjXaojXao!xYp|o\y6l/tests/out/cpu_tb.outTREE228 6 Ah D2C'[tmdocs15 4 IJ <`(7ಜentrega-12 0 Bt3qb{VdJq:entrega-22 0 Q& efE2entrega-32 0 ?jG" ڐentrega-45 0 џoP 1\icodes28 3  = XyO0fbin7 0 ot6F"~QE6Ehex7 0 o֖2J9assembly7 0 t? .n5X٬Dtests124 4 뷺; !3Ee$@|bin26 0 ;pM}ٸhex27 0 ۗӌInU,out19 0 @tZJYw gs3z(binaries23 0 B: < /M9??boards5 2 La_<R?Dfnano9k3 0 I'OMU1,UpSprimer20k2 0 %djW =$6project21 2 K.8ydZccpu8 0 fPn;lfL?peripheral3 0 '5l'st\L8Ntestbenches20 1 .+M9 autils1 0 z Q<eijCL