Да, он.
Простой рабочий пример (только на передачу).
Сигналы ETHERNET_* - прямо на пины PHY. Не забудьте phy_reset_n установить в 1 так он active low.
clk_125M_tx - ваша забота; clk_125M_rx - придет от PHY.
Простой рабочий пример (только на передачу).
Сигналы ETHERNET_* - прямо на пины PHY. Не забудьте phy_reset_n установить в 1 так он active low.
clk_125M_tx - ваша забота; clk_125M_rx - придет от PHY.
в примере IP Core головной файл core_eth_example_design.v, связанный с PHY и с core_eth_fifo_block.v , который включает в себя core_eth_ten_100_1g_eth_fifo.v , включающий core_eth_tx_client_fifo.v и core_eth_rx_client_fifo.v, и связанный с pat_gen. в вашем примере как бы часть core_eth_fifo_block.v который стал головным и связан с PHY и он должен включать в себя core_eth_tx_client_fifo.v и core_eth_rx_client_fifo.v . это нужно сделать? и вместо pat_gen по axi stream через
.tx_axi_clk(clk_125M_tx),
.tx_axis_mac_tdata(eth_axis_tdata),
.tx_axis_mac_tvalid(eth_axis_tvalid),
.tx_axis_mac_tlast(eth_axis_tlast),
.tx_axis_mac_tuser(1'b0),
.tx_axis_mac_tready(eth_axis_tready),
нужно подключить пакет для передачи?
пакет это преамбула ? , разделитель?, адрес приемника(4 или 6 ?), адрес передатчика(4 или 6 ?), длина , данные, crc.
или это самодостаточный модуль как бы core_eth.v, открываемый из core_eth.xco. и к нему подключаться также по axi stream по тем же сигналам.
и еще вопрос по axi stream. данные записываются пока не появится tready под каждый клок новый байт.если не успеваю сформировать новый байт , то выдавать tvalid. а tlast - конец пакета и если нет tready можно писать следующий.