Chargement…
Chargement…
Le maître SPI génère l'horloge SCK par division de l'horloge système (configurable via générique). Une transaction démarre sur commande et envoie/reçoit un nombre configurable de bits en mode 0 (CPOL=0, CPHA=0). Le module gère le Slave Select et signale quand il est occupé.
Le reset est synchrone et actif haut.
g_CLK_DIVGénériques :
g_CLK_DIV : positive (défaut 4) - Cycles système par demi-période SCKg_DATA_WIDTH : positive (défaut 8) - Nombre de bits par tramePorts :
| Signal | Direction | Largeur | Description |
|---|---|---|---|
i_clk | Entrée | 1 bit | Horloge système |
i_rst | Entrée | 1 bit | Reset synchrone |
i_start | Entrée | 1 bit | Démarrage d'une transaction |
i_data | Entrée | g_DATA_WIDTH | Données à émettre |
o_sck | Sortie | 1 bit | Horloge SPI générée |
o_ss_n | Sortie | 1 bit | Slave Select actif bas |
o_mosi | Sortie | 1 bit | Master Out Slave In |
i_miso | Entrée | 1 bit | Master In Slave Out |
o_data | Sortie | g_DATA_WIDTH | Données reçues |
o_data_valid | Sortie | 1 bit | Pulse données valides |
o_busy | Sortie | 1 bit | Transaction en cours |