Mode-configurable SPI master for Veryl.
Modules
Packages
SPI Master モジュール
startはidle中に1クロックだけHighにし、同じcycleのtx_dataを保持する。
受理後はbusyとcs_nをアサートし、全bitの転送とCS High保持時間が終わるとdoneを1クロックだけHighにする。
転送はMSB-first。
CPOLはidle level、CPHAは最初のedgeがshiftかsampleかを決める。
Mode 0/2はleading edgeでsample、Mode 1/3はleading edgeでshiftする。
| DATA_WIDTH |
u16 |
通信ビット数 (8, 16, 24, 32など)
|
| CLK_DIV |
u16 |
分周比 (50MHz入力で50なら1MHzのSCLK)
|
| clk |
input |
clock |
System Clock (50MHz)
|
| rst |
input |
reset |
Reset
|
| start |
input |
logic |
通信開始トリガー (1パルス)
|
| tx_data |
input |
logic
| 送信データ
|
| rx_data |
output |
logic
| 受信データ
|
| busy |
output |
logic |
通信中フラグ
|
| done |
output |
logic |
完了フラグ (1パルス)
|
| sclk |
output |
logic |
SPIクロック
|
| mosi |
output |
logic |
SPI MOSI
|
| miso |
input |
logic |
SPI MISO
|
| cs_n |
output |
logic |
SPI Chip select (Active Low)
|
|
|
SPI共通型定義パッケージ