You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: ip/communication/spi/spi_tx.vhd
+44-17Lines changed: 44 additions & 17 deletions
Original file line number
Diff line number
Diff line change
@@ -149,29 +149,56 @@ begin
149
149
endif;
150
150
endprocess;
151
151
152
+
-- NOTE: Xilinx doesn't recognise generic functions that have the same definitions like rising_edge/falling_edge, thus, it creates latches instead of FFs
153
+
-- So we've to manually state for which SPI mode at what edge has to be sampled.
154
+
-- With Intel the previous solution worked perfectly
152
155
serial_data_out_and_chip_select_alignment: block
153
156
signal spi_chip_select_n_assertion: spi_chip_select_n'subtype;
154
157
signal spi_chip_select_n_deassertion: spi_chip_select_n'subtype;
155
158
begin
156
-
serial_data_out_alignment: process (all)
157
-
begin
158
-
if tx_active_edge(spi_clk_in, SPI_CLK_POLARITY, SPI_CLK_PHASE) then
159
-
serial_data_out <= serial_data_out_internal;
160
-
endif;
161
-
endprocess;
162
-
163
-
chip_select_n_alignment: process (all)
164
-
begin
165
-
if active_edge_chip_select_n_assertion(spi_clk_in, SPI_CLK_POLARITY) then
0 commit comments