Vengineerの妄想(準備期間)

人生は短いけど、長いです。人生を楽しみましょう!

stringを使えば、、

Verification Engineerの戯言

SystemVerilogでは、stringという新しいデータタイプがあります。
これで、Verilog HDLで文字列を表現するために、regの2次元配列を使わなくてもよくなります。

string s1 = "Verification Engineer";
string s2 = b;

stringには、次のようなfunction/taskがあります。

function int len(): // 文字列の長さ

task putc(int i, string s); // 指定した場所に、文字列を挿入する
task putc(int i, byte c); // 指定した場所に、文字を挿入する
function int getc(int i); // 指定した場所の文字を得る
i>0 && i<=str.len()です。

function string toupper()
function string tolower()
function int compare(string s)
function int icompare(string s)
function string substr(int i, int j)
ANSI-Cのtoupper/tolowe/compare/substrと同じ、icompare(小文字/大文字の区別無しのcompare)

function integer atoi()
function integer atohex()
function integer atooct()
function integer atobin()
function real atoreal()
task itoa(integer i)
task hextoa(integer i)
task octtoa(integer i)
task bintoa(integer i)
task realtoa(real r)
ASCIIを数字表記、数字表記をASCIIに変換