本節では、PoC設計に含まれる3つの基本ブロック(FSM、MUX、Adder)の詳細な機能仕様を明示し、それぞれの入出力定義・動作内容・設計意図を整理します。これにより、後続のRTL設計と物理設計への展開を円滑に行う基盤を構築します。
クロック同期型の状態遷移回路を学ぶ。状態制御・出力制御の基本構造を理解する。
4状態の単純な状態機械。外部入力に応じて状態遷移し、状態ごとに異なる出力制御を行う。
現状態 | 入力signal | 次状態 | 出力flag |
---|---|---|---|
IDLE | 0 | IDLE | 0 |
IDLE | 1 | LOAD | 0 |
LOAD | - | EXEC | 0 |
EXEC | - | DONE | 1 |
DONE | - | IDLE | 0 |
信号名 | 種類 | 説明 |
---|---|---|
clk | 入力 | クロック |
rst_n | 入力 | 非同期リセット(負論理) |
start | 入力 | 状態遷移トリガ |
flag_done | 出力 | 処理完了フラグ(DONE時High) |
基本的な組み合わせ回路の構造・記述・レイアウトに慣れる。
選択信号(SEL)に応じて、2つの入力(A, B)のどちらかを出力する。
SEL | A | B | Y(出力) |
---|---|---|---|
0 | 0 | 1 | 0 |
0 | 1 | 0 | 1 |
1 | 0 | 1 | 1 |
1 | 1 | 0 | 0 |
信号名 | 種類 | 説明 |
---|---|---|
A | 入力 | 入力信号A |
B | 入力 | 入力信号B |
SEL | 入力 | セレクト信号 |
Y | 出力 | 出力信号 |
演算処理の基本構造とビットバス処理、キャリープロパゲーションの理解。
4ビット同士の加算を行い、5ビットの出力(SUM + COUT)を生成。
信号名 | 種類 | ビット幅 | 説明 |
---|---|---|---|
A | 入力 | [3:0] | 加算入力A |
B | 入力 | [3:0] | 加算入力B |
SUM | 出力 | [3:0] | 計算結果 |
COUT | 出力 | 1bit | 繰り上がりキャリー |
ブロック | 学習ポイント | 今後の拡張 |
---|---|---|
FSM | クロック制御、状態機械 | UART, SPI制御回路等の応用 |
MUX | 組み合わせ回路、選択構造 | ALU制御、アドレス選択 |
Adder | 計算回路、バス、キャリー | ALU、DSPブロックへの拡張 |
次節4.3では、これらのブロックをSky130上で実現するための設計制約(電源電圧・タイミング・レイアウト条件など)を詳しく解説します。