Dies Aliquanti

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PICを作ろう 準備編 ~昼休みにまったり進めるプロジェクト~

えー、PICのVerilogモデルを作ろうと思います。
この前、ちょっとしたものをVerilogで書こうとしたときに、いろんなことを
忘れているので愕然としたこともあって、リハビリをしようと思う。
また、前にも書いたけど、手元にいっぱいある16F648Aの使い道を考えたいのだが、やっぱりプログラム組んで、ROM焼いて、動きません、を繰り返すのははあまり生産的でないと思うので、その対策でもあります。
ただ、時間をとるのは難しいので、昼休みにやろうと思います。

CPUを作るのは、実はあまり難しくはありません。もちろん、Core2DUOを作れという
とそりゃむりです。でも、PICぐらいなら、時間をとって作業すれば、1週間くらいでなんとかなってしまうと思います。本当は、面白いところはアーキテクチャを決めるところなんですが、まあいいでしょう、目的はリハビリですから(笑)。
同じようなテーマでは、k_comさんが書かれてます。まじめな話はそちらを見ていただくとして、このプロジェクトでは、

1) PIC16F648AのシミュレーションモデルをVerilogでつくる。
2) うまくいきそうならば、論理合成できるようにする。
3) 運がよければ、Verilog-HDLの中級者になにか啓示を与えることができるかも(笑)。上級者の失笑を買わないようにがんばりましょう。


を目標にしたいと思います。

で、準備として、PIC16F648A(以下16F648)のデータブックを眺めはじめました。アーキテクチャの細かいところは書いてませんね… 仕方ないので、よく使われるPIC16F84Aのデータブックも眺めます。こちらのほうがいいですね。Special Functionレジスタの中身は、PICmicro Mid-Range MCU Family Reference Manual(文書番号DS33023A)のほうがよくわかります。PICの14ビット系アーキテクチャの特徴は、
  命令メモリとデータメモリの分離。いわゆる「ハーバード・アーキテクチャ」ですね。
  1命令/1クロック
  命令は、すべて1ワード(14ビット)で固定
  PipeLine処理で、演算と次の命令のフェッチを同時実行
  また、データメモリとI/Oは区別されていません。
プログラムカウンタやステータスレジスタも汎用のレジスタ(メモリ)と同様にアクセスすることができます(実装はちょっとめんどくさくなりますね)。内部クロックは4相のようですが、できれば単相クロックのほうがありがたいので、できるだけそうしましょう。
今日はこの辺まで。
----
本日の御託
 暑くなってきたので、髪を切った。思いっきり短くしたのだが、家内にはすこぶる不評で、「聖護院大根」とか「つのだ☆ひろ」とか言われた(涙)…



コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://diesaliquanti.blog.fc2.com/tb.php/335-b8543bd9
この記事にトラックバックする(FC2ブログユーザー)

FC2Ad

まとめ

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。