1
A
回答
4
如果您有權訪問支持SystemVerilog語法的現代模擬器,則有一個string
數據類型。字符串可以連接和比較。請參閱IEEE標準(1800年至2009年),或this reference
3
Verilog中沒有字符串數據類型,但verilog不支持字符串文字並將它們用作字節向量。這是從規範的例子:
module string_test;
reg [8*14:1] stringvar;
initial begin
stringvar = "Hello world";
$display ("%s is stored as %h", stringvar,stringvar);
stringvar = {stringvar,"!!!"};
$display ("%s is stored as %h", stringvar,stringvar);
end
endmodule
由於字符串使用reg數據類型,你可以使用正常的運營商來操作它們,記住每一個字符用8位。
5.2.3.1字符串操作
常見的字符串操作複製,串聯,和比較是由Verilog HDL語言運營商的支持。複製 由簡單的作業提供。級聯由 級聯運算符提供。比較由等於 運營商提供。當處理矢量寄存器中的字符串值時,爲了保留8位ASCII碼,寄存器 應該至少爲8 * n位(其中n是ASCII碼爲 的字符數)。
如果您需要搜索等操作,您將不得不編寫一些任務或函數。
0
sjtaheri,
振興死線程,但我看到這個問題上來,有是它的一個新的解決方案。
svlib是一個免費的開放源碼的SystemVerilog實用函數庫。它包括文件和字符串操作功能,完整的正則表達式搜索/替換,輕鬆讀寫配置文件,訪問環境變量和掛鐘時間等等。該項目在DVCon 2014展出。
相關問題
- 1. 操作字符串內的操作符
- 2. awk中字符串操作
- 3. 字符串操作
- 4. 字符串操作
- 5. 字符串操作
- 6. 字符串操作
- 7. 字符串操作
- 8. 字符串操作
- 9. 字符串操作
- 10. 字符串操作
- 11. 字符串操作
- 12. 字符串操作?
- 13. 字符串操作
- 14. 字符串操作
- 15. 字符串操作
- 16. 字符串操作
- 17. 字符串操作
- 18. 字符串操作
- 19. 字符串操作
- 20. 字符串操作
- 21. 操作字符串
- 22. 字符串操作
- 23. 字符串操作
- 24. 字符串操作
- 25. 字符串操作
- 26. 字符串操作
- 27. 字符串操作
- 28. 字符串操作
- 29. 字符串操作
- 30. 字符串操作