ねえ、VHDL で AND 2 を組み合わせることはまったく可能かどうか疑問に思っていましSTD_LOGIC_VECTORS
た。たとえば、文字を VGA モニターに出力する VHDL プログラムを作成しています。ベクトルPixelRow: IN STD_LOGIC_VECTOR(9 DOWNTO 0)
とがありPixelColumn: IN STD_LOGIC_VECTOR(9 DOWNTO 0)
ます。私がやろうとしているのSTD_LOGIC
は、2 つのピクセル ベクトルを取り、それらを別のベクトルと AND 演算する出力を用意することです。
Output <= (PixelRow AND NOT "0000000000") OR (PixelColumn AND NOT "0000000000") OR
(PixelRow AND NOT "0111011111") OR (PixelColumn AND NOT "1001111111");
このコードを使用して、次のコードを簡素化できることを願っています。
Output <= ((NOT PixelRow(0) AND NOT PixelRow(1) AND NOT PixelRow(2) AND NOT
PixelRow(3) AND NOT PixelRow(4) AND NOT PixelRow(5) AND NOT PixelRow(6)
AND NOT PixelRow(7) AND NOT PixelRow(8) AND NOT PixelRow(9)))
OR ((NOT PixelRow(0) AND PixelRow(1) AND PixelRow(2) AND PixelRow(3) AND
NOT PixelRow(4) AND PixelRow(5) AND PixelRow(6) AND PixelRow(7) AND
PixelRow(8) AND PixelRow(9)))
OR ((NOT PixelColumn(0) AND NOT PixelColumn(1) AND NOT PixelColumn(2) AND
NOT PixelColumn(3) AND NOT PixelColumn(4) AND NOT PixelColumn(5) AND NOT
PixelColumn(6) AND NOT PixelColumn(7) AND NOT PixelColumn(8) AND NOT
PixelColumn(9)))
OR ((PixelColumn(0) AND NOT PixelColumn(1) AND NOT PixelColumn(2) AND
PixelColumn(3) AND PixelColumn(4) AND PixelColumn(5) AND PixelColumn(6)
AND PixelColumn(7) AND PixelColumn(8) AND PixelColumn(9)));
より大きなコード ブロックは、画面の周りにボックスを描画します。これを行うためのはるかに簡単な方法があることを願っています。このコードを単純化する方法を知っている人はいますか?
ありがとう