CPLD内のLEDスキャンレジスタを外部バスからアクセスできるようにして
H8側から見ると5ビットのレジスタが3個見えるようになっています。
この状態でH8のプログラムで背照LEDをランダムに明滅させました。
architecture Behavioral of LEDSCAN is
signal REG0,REG1,REG2 : std_logic_vector(4 downto 0);
begin
process ( WR,RST ) begin
if(RST = '1') then
REG0 <="00000";
REG1 <="00000";
REG2 <="00000";
elsif ( WR'event and WR = '1' ) then
case ADDR is
when "10" => REG2 <= DATA;
when "01" => REG1 <= DATA;
when others => REG0 <= DATA;
end case;
end if;
end process;
SEG <= REG0 when LINE = "100" else
REG1 when LINE = "010" else
REG2;
end Behavioral;
大昔のSF映画やアニメのコンピュータの表現にマトリックス状のランプの明滅が
よく出てきますがそんな感じです。
あれが実際あるとするとアドレスやデータバス、レジスタの内容をリアルタイムに
表示してるのかもしれませんが、
あったとしても読み取れないだろうし、もしかしたらCPUがホールドせず動いていることの
確認だけだったりして?