電気回路/FPGA入門 のバックアップ(No.1)

更新


公開メモ

論理回路初心者に FPGA を教えるとしたら

興味を持つ学生に、 どういう順番で説明するのが良いか、考えてみました。

後でちゃんとした文章にするかもしれませんが、とりあえずは個人的なメモになります。

目次

1. デジタル信号

  • true or false の2値とするのが基本? 1 or 0 で表すこともある。
  • 負論理なんかもあるけれど、説明するのは実際に使うときで良い気がする。

2. (理想的な)組み合わせ論理回路

  • 一般にはデジタル入力線とデジタル出力線とを複数持つ
  • 入力が決まると出力が決まる (入力が同じなら同じ出力を出す)
  • 簡単な例としては NOT や AND、OR など
  • 少し複雑になると 全加算器 とか
  • そういうのを組み合わせたもっとずっと複雑なものでもいい

3. デジタル信号の実際

  • 1 or 0 は実際には導線に掛ける電圧。例えば 3.3V or 0V とか。
  • 組み合わせ論理回路の入力線に印加する電圧を決めると、出力される電圧が決まる
  • でも、入力を変えてから出力が決まるまでには時間がかかる → 伝達遅延
  • 遅延は、回路に含まれる素子を通る際の遅延と、素子間の配線を通るための遅延と、の和になる。
  • だから、同じ回路でも複数あるうちの1つの入力線から1つの出力線への遅延は、別の入力線から別の出力線への遅延と異なるのが普通
  • 一斉に入力を決めても、出力が決まる時間は出力線によってバラバラになる
  • では、いつ出力を読めば良いの?
    → もっとも長い伝達遅延を持つ出力が変化するまで待ってから読む
    → それまで入力を変えてはいけない

4. クロック同期回路


Counter: 6753 (from 2010/06/03), today: 1, yesterday: 3