[新連載]CPLD入門!
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
いつか使うことになるだろうと思ってはいたのですが。
何を今頃になって、というようなものですが。
ようやく本気で、CPLDと四つに取り組みます。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
[第14回]
●VHDLプログラム(訂正)
前回の続きを書こうとしてプログラムリストを確認したところ、間違いがあることに気が付きました。
それを訂正する過程で、このプログラムはコンパイルしてエラーが出ないことを確認して、CPLDには書き込んだのですが、実際に正しく動くかどうかということまでは確認していなかったらしいことがわかりました。
なにしろ時間に追われるなかで作業していたものですから、動作確認はあとで時間ができたときにしよう、ま、多分動くだろうということでそのままになってしまったらしいのです。
で。
あらためて動作確認してみたのですが、案の定、動いてくれません。
それで最初に気が付いたところのほかにもまだまずいところがあることがわかりました。
全体のプログラムリストは[第10回]でお見せしました。
ミスが見つかりましたので、修正済みのリストと差し換えました。
間違っていたのは下の部分と、
process(s98out,Dinout,rcwk) begin if s98out'event and s98out= '0' then rcwk<=Dinout(3 downto 0); else rcwk<=rcwk; end if; end process; |
process(s94out,Dinout,rcwk2) begin if s94out'event and s94out= '0' then rcwk2<=Dinout(3 downto 0); else rcwk2<=rcwk2; end if; end process; |