Vivado软件(用VerilogHDL)如何使用$readmemh和$readmemb函数
生活随笔
收集整理的這篇文章主要介紹了
Vivado软件(用VerilogHDL)如何使用$readmemh和$readmemb函数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
0 前言
博主我查了很多資料,雖然會使用Verilog的readmemh和readmemh和readmemh和readmemb函數,可是,在vivado軟件中怎么用?文件放在哪里?沒有一篇文章提及。
花了幾個小時,終于研究明白了,特此記錄下來,也希望為后來者提供幫助。
對于函數使用的講解,不再贅述,其他博主寫的很好了,點此查看即可。
這里重點強調,文件放在哪里!
1. 兩種文件訪問方式
1.1 默認路徑訪問
reg [31:0] rom [31:0];initial $readmemh ( "rom.txt",rom);對于上述表示方式rom.txt,這個文件的位置,必須放在指定文件夾內
進入sim文件夾,然后依次進入sim_1,behav,xsim
在這里建立rom.txt文件即可,之后仿真的時候,就可以正常調用數據了。
1.2 絕對路徑訪問
reg [31:0] rom [31:0];initial $readmemh ( "D:/myCollege/ComputerOrganization/VerilogDesign/test_readmemh/rom.txt",rom);如上所示,直接給出文件的絕對路徑,這樣就可以任意設定rom.txt文件的位置。
補充學習鏈接
注意:斜杠一定要是/,直接復制過來的win路徑不是這個,需要修改。
1.3 相對路徑訪問
這個與win和Linux的cd命令,訪問文件的方式一樣,不再多說。
通過上面的指令,你就可以把數據文件放在最表面的位置,好找。
2 教訓
首先,大小寫不該錯,但是真錯了,是很難看的出來……
其次,報錯含義:dataROm未聲明可能C++能看到,到Verilog咋就看不懂了??以后心態放平和。
找錯注意:2個屬性,這個不是,那就是另外一個
最后,文件位置之前解決了,還記錄在本文,第31行一共就2個屬性,非抓第一個不放干嘛。
好了,以后不要再犯這種愚蠢的錯誤了。
總結
以上是生活随笔為你收集整理的Vivado软件(用VerilogHDL)如何使用$readmemh和$readmemb函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 腾讯视频H5是指什么
- 下一篇: 【汇编语言】王爽第六章程序6.3解答,8