verilogを高位合成する、インタープリター

作品プログラム
動作環境
プロデル 2.0.1322 Windows 11 Pro 64ビット
投稿者
ohisama
投稿日
2025-08-06 14:55:50
ダウンロード数
83

作品のプログラム

[ソース]を、高位合成する手順
  マップは{}
  文は、ソースを「
」で区切ったもの
  文を行へそれぞれ繰り返す
    項目は、行を、「 」で区切ったもの
    項目(1)について分岐
    「lin」の場合
      【n:整数】は、項目(2)
      縦を1からnまで増やしながら繰り返す
        マップ(縦)は{}
        横を1からnまで増やしながら繰り返す
          マップ(縦)(横)は、0
        そして
      そして
    「code」の場合
      【c:整数】は、項目(3)
      項目(2)について分岐
      「00」の場合
        マップ(1)(1)は、c
      「01」の場合
        マップ(1)(2)は、c
      「02」の場合
        マップ(2)(1)は、c
      「03」の場合
        マップ(2)(2)は、c
      その他の場合
      そして
    その他の場合
    そして
  そして
  「module lut(input wire [[]1:0[]] data, output reg  code);
    always @(data)
    begin
        case(data)
        2'h00: 
          code = 1'h0[マップ(1)(1)];
        2'h01: 
          code = 1'h0[マップ(1)(2)];
        2'h02: 
          code = 1'h0[マップ(2)(1)];
        2'h03: 
          code = 1'h0[マップ(2)(2)];
        endcase
    end
endmodule」を出力して改行  
終わり

「
lut 3
lin 2
lout 1
code 00 00
code 01 01
code 02 01
code 03 00
」を、高位合成する
	

▲ページの先頭へ