From 0ae37a6dfee9ae5b316ed5aa450232a495222e16 Mon Sep 17 00:00:00 2001 From: Daniel Newbrook <dwn1c21@soton.ac.uk> Date: Fri, 6 Dec 2024 12:55:50 +0000 Subject: [PATCH] V1.4 update megasoc tech, add ADP and docs --- .gitignore | 7 +- doc/megasoc_configuration_manual.pdf | Bin 0 -> 58998 bytes doc/megasoc_datasheet.pdf | Bin 0 -> 71268 bytes doc/tex/megasoc_configuration_manual.tex | 34 +++ doc/tex/megasoc_datasheet.tex | 50 ++++ doc/tex/megasoc_sys_address_map.tex | 25 ++ doc/tex/preamble.tex | 1 + flist/project/megasoc_tb.flist | 4 + fpga/CICD/procs.tcl | 10 +- fpga/targets/haps_sx/fpga_pinmap.xdc | 9 +- fpga/targets/haps_sx/fpga_timing.xdc | 2 +- fpga/targets/haps_sx/megasoc_design_wrapper.v | 27 +-- makefile | 7 + megasoc_chip/chip/logical/megasoc_chip.v | 27 ++- .../pads/glib/logical/megasoc_chip_pads.v | 33 ++- megasoc_system/logical/megasoc_system.v | 204 ++++++++++++++++- megasoc_tech | 2 +- verif/control/logical/megasoc_clkreset.v | 11 +- verif/testbench/logical/megasoc_tb.sv | 88 ++++++- .../megasoc_axi_stream_io_8_rxd_to_file.v | 81 +++++++ verif/trace/megasoc_ft1248x1_track.v | 125 ++++++++++ .../megasoc_ft1248x4_to_axi_streamio_v1_0.v | 214 ++++++++++++++++++ 22 files changed, 927 insertions(+), 34 deletions(-) create mode 100644 doc/megasoc_configuration_manual.pdf create mode 100644 doc/megasoc_datasheet.pdf create mode 100644 doc/tex/megasoc_configuration_manual.tex create mode 100644 doc/tex/megasoc_datasheet.tex create mode 100644 doc/tex/megasoc_sys_address_map.tex create mode 100644 doc/tex/preamble.tex create mode 100644 verif/trace/megasoc_axi_stream_io_8_rxd_to_file.v create mode 100644 verif/trace/megasoc_ft1248x1_track.v create mode 100644 verif/trace/megasoc_ft1248x4_to_axi_streamio_v1_0.v diff --git a/.gitignore b/.gitignore index 331c9ff..bcea41d 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,9 @@ simulate/ imp/ system/src/bootrom -system/src/defines \ No newline at end of file +system/src/defines + +doc/tex/*.aux +doc/tex/*.log +doc/tex/*.out +doc/tex/*.toc diff --git a/doc/megasoc_configuration_manual.pdf b/doc/megasoc_configuration_manual.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f0cdc56eaa01a28ebfa54efdfadf233afb147c7f GIT binary patch literal 58998 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 literal 0 HcmV?d00001 diff --git a/doc/megasoc_datasheet.pdf b/doc/megasoc_datasheet.pdf new file mode 100644 index 0000000000000000000000000000000000000000..facdd54a902155a2d78499a062393994ff9873a6 GIT binary patch literal 71268 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 N)PPG>)z#mP3jn2z2)Y0O literal 0 HcmV?d00001 diff --git a/doc/tex/megasoc_configuration_manual.tex b/doc/tex/megasoc_configuration_manual.tex new file mode 100644 index 0000000..e752ad1 --- /dev/null +++ b/doc/tex/megasoc_configuration_manual.tex @@ -0,0 +1,34 @@ +\documentclass{report} +\usepackage{hyperref} +\usepackage{tcolorbox,float} +\usepackage{listings} + +\makeatletter +\newfloat{info@box}{tbp}{loi}[section]% 1: Name of float environment. 2: Default placement (top, bottom, ...). 3: File extension if written to an aux-file (like toc, lof, lot, loa, ...). 4: Numbering within <section/subsection/...>. +\makeatother +\floatname{info@box}{Infobox}% Adapt caption. +\newenvironment{infobox}[1][]{% Create new environment using info@box and tcolorbox + \begin{info@box}% + \begin{tcolorbox}[colback=red!15!white,% background color + colframe=red!75!black,% frame color + title=Additional information\ifstrempty{#1}{}{: #1}.% title + ]% +}{% + \end{tcolorbox}% + \end{info@box}% +} + +\title{megaSoC Configuration Manual} +\author{\href{http://www.soclabs.org}{SoC Labs}} +\begin{document} +\maketitle +\input{preamble.tex} +\begin{infobox} + You must run 'source set\_env.sh' from the megasoc-project directory every time you open a new terminal! +\end{infobox} \par + +\tableofcontents +\clearpage +\chapter{Introduction} + +\end{document} \ No newline at end of file diff --git a/doc/tex/megasoc_datasheet.tex b/doc/tex/megasoc_datasheet.tex new file mode 100644 index 0000000..4843135 --- /dev/null +++ b/doc/tex/megasoc_datasheet.tex @@ -0,0 +1,50 @@ +\documentclass{report} +\usepackage{hyperref} + +\title{megaSoC Datasheet} +\author{\href{http://www.soclabs.org}{SoC Labs}} +\begin{document} +\maketitle +\input{preamble.tex} + +\tableofcontents +\clearpage +\chapter{Introduction} + +\section{Summary} + + +\chapter{System} + +\section{Bus Interconnect} + +\section{Address Map} +\subsection{Summary} + +\input{megasoc_sys_address_map.tex} + +\subsection{Peripheral Region} +Below are the address regions for the System IO/Peripherals, detailed address maps for each peripheral are in chapter \ref{peripherals} +\begin{center} + \begin{tabular}{||c | c | c ||} + \hline + Region & Start Address & End Address \\ + \hline\hline + UART 0 & 0x40000000 & 0x40000FFF \\ + \hline + Timer 1 & 0x40001000 & 0x40001FFF \\ + \hline + \end{tabular} +\end{center} + +\section{} + + +\chapter{Peripherals} \label{peripherals} + +\chapter{Recommended Testboard} + + + + +\end{document} diff --git a/doc/tex/megasoc_sys_address_map.tex b/doc/tex/megasoc_sys_address_map.tex new file mode 100644 index 0000000..0776319 --- /dev/null +++ b/doc/tex/megasoc_sys_address_map.tex @@ -0,0 +1,25 @@ +\begin{center} + \begin{tabular}{||c | c | c ||} + \hline + Region & Start Address & End Address \\ + \hline\hline + Boot-Rom & 0x00000000 & 0x0000FFFF \\ + \hline + FLASH & 0x00400000 & 0x007FFFFF \\ + \hline + SRAM & 0x00800000 & 0x0080FFFF \\ + \hline + FLASH CTRL & 0x01000000 & 0x0100FFFF \\ + \hline + DMA CTRL & 0x01010000 & 0x01011FFF \\ + \hline + GIC & 0x01100000 & 0x01107FFF \\ + \hline + PERIPHERAL & 0x40000000 & 0x5FFFFFFF \\ + \hline + DEBUG & 0x60000000 & 0x7FFFFFFF \\ + \hline + DRAM & 0x80000000 & 0xFFFFFFFF \\ + \hline + \end{tabular} +\end{center} diff --git a/doc/tex/preamble.tex b/doc/tex/preamble.tex new file mode 100644 index 0000000..58943b8 --- /dev/null +++ b/doc/tex/preamble.tex @@ -0,0 +1 @@ +Preamble, copyrights licenses etc. \ No newline at end of file diff --git a/flist/project/megasoc_tb.flist b/flist/project/megasoc_tb.flist index 9af3714..1a976d4 100644 --- a/flist/project/megasoc_tb.flist +++ b/flist/project/megasoc_tb.flist @@ -23,5 +23,9 @@ $(SOCLABS_PROJECT_DIR)/verif/trace/megasoc_uart_capture.v $(SOCLABS_PROJECT_DIR)/verif/trace/megasoc_qspi_capture.v $(SOCLABS_PROJECT_DIR)/verif/control/logical/megasoc_clkreset.v +$(SOCLABS_PROJECT_DIR)/verif/trace/megasoc_axi_stream_io_8_rxd_to_file.v +$(SOCLABS_PROJECT_DIR)/verif/trace/megasoc_ft1248x4_to_axi_streamio_v1_0.v +$(SOCLABS_PROJECT_DIR)/verif/trace/megasoc_ft1248x1_track.v +$(SOCLABS_PROJECT_DIR)/megasoc_tech/logical/socdebug_tech/socket/f232h_ft1248_stream/verilog/SYNCHRONIZER_EDGES.v // $(SOCLABS_MEGASOC_TECH_DIR)/logical/MS_QSPI_XIP_CACHE/verify/vip/sst26wf080b.v diff --git a/fpga/CICD/procs.tcl b/fpga/CICD/procs.tcl index 5e3646b..52a0746 100644 --- a/fpga/CICD/procs.tcl +++ b/fpga/CICD/procs.tcl @@ -147,7 +147,15 @@ proc connect_zc702 {} { } proc connect_haps_sx {} { - + open_hw_manager + connect_hw_server -allow_non_jtag + open_hw_target -xvc_url 10.22.13.34:2542 + set_property PROBES.FILE {/home/dwn1c21/SoC-Labs/megasoc_project/imp/fpga/megasoc/tmp_edit_project.runs/impl_1/megasoc_design_wrapper.ltx} [get_hw_devices xcvu19p_0] + set_property FULL_PROBES.FILE {/home/dwn1c21/SoC-Labs/megasoc_project/imp/fpga/megasoc/tmp_edit_project.runs/impl_1/megasoc_design_wrapper.ltx} [get_hw_devices xcvu19p_0] + set_property PROGRAM.FILE {/home/dwn1c21/SoC-Labs/megasoc_project/imp/fpga/megasoc/tmp_edit_project.runs/impl_1/megasoc_design_wrapper.bit} [get_hw_devices xcvu19p_0] + program_hw_devices [get_hw_devices xcvu19p_0] + refresh_hw_device [lindex [get_hw_devices xcvu19p_0] 0] + reset_hw_axi [get_hw_axis] } diff --git a/fpga/targets/haps_sx/fpga_pinmap.xdc b/fpga/targets/haps_sx/fpga_pinmap.xdc index 04d5014..1161157 100644 --- a/fpga/targets/haps_sx/fpga_pinmap.xdc +++ b/fpga/targets/haps_sx/fpga_pinmap.xdc @@ -1,7 +1,14 @@ set_property PACKAGE_PIN BK44 [get_ports nRESET_0] set_property PACKAGE_PIN BM44 [get_ports CLK_IN_P] set_property PACKAGE_PIN BN44 [get_ports CLK_IN_N] - +set_property PACKAGE_PIN AW16 [get_ports PMOD1_IO[0]] +set_property PACKAGE_PIN AW15 [get_ports PMOD1_IO[1]] +set_property PACKAGE_PIN AY14 [get_ports PMOD1_IO[2]] +set_property PACKAGE_PIN AY13 [get_ports PMOD1_IO[3]] +set_property PACKAGE_PIN AV16 [get_ports PMOD1_IO[4]] +set_property PACKAGE_PIN AV15 [get_ports PMOD1_IO[5]] +set_property PACKAGE_PIN AU17 [get_ports PMOD1_IO[6]] +set_property PACKAGE_PIN AU16 [get_ports PMOD1_IO[7]] set_property IOSTANDARD DIFF_SSTL12 [get_ports CLK_IN_P] set_property IOSTANDARD DIFF_SSTL12 [get_ports CLK_IN_N] diff --git a/fpga/targets/haps_sx/fpga_timing.xdc b/fpga/targets/haps_sx/fpga_timing.xdc index 71862a4..77c65e5 100644 --- a/fpga/targets/haps_sx/fpga_timing.xdc +++ b/fpga/targets/haps_sx/fpga_timing.xdc @@ -1 +1 @@ -create_clock -name CLK_IN_P -period 10 [get_ports CLK_IN_P] +create_clock -name EXT_CLK -period 10 [get_ports CLK_IN_P] diff --git a/fpga/targets/haps_sx/megasoc_design_wrapper.v b/fpga/targets/haps_sx/megasoc_design_wrapper.v index 0959e0e..60a9b01 100644 --- a/fpga/targets/haps_sx/megasoc_design_wrapper.v +++ b/fpga/targets/haps_sx/megasoc_design_wrapper.v @@ -10,33 +10,18 @@ //-------------------------------------------------------------------------------- `timescale 1 ps / 1 ps -module megasoc_design_wrapper - (CLK_IN_P, - CLK_IN_N, - //QSPI_IO_e_0, - //QSPI_IO_i_0, - //QSPI_IO_o_0, - //QSPI_SCLK_0, - //QSPI_nCS_0, - nRESET_0); - - input CLK_IN_P; - input CLK_IN_N; - //output [3:0]QSPI_IO_e_0; - //input [3:0]QSPI_IO_i_0; - //output [3:0]QSPI_IO_o_0; - //output QSPI_SCLK_0; - //output QSPI_nCS_0; - input nRESET_0; +module megasoc_design_wrapper( + input wire CLK_IN_P, + input wire CLK_IN_N, + input wire nRESET_0, + inout wire [7:0] PMOD1_IO +); - wire CLK_IN_P; - wire CLK_IN_N; wire [3:0]QSPI_IO_e_0; wire [3:0]QSPI_IO_i_0; wire [3:0]QSPI_IO_o_0; wire QSPI_SCLK_0; wire QSPI_nCS_0; - wire nRESET_0; megasoc_design megasoc_design_i (.CLK_P(CLK_IN_P), diff --git a/makefile b/makefile index ca40059..3a2edf1 100644 --- a/makefile +++ b/makefile @@ -131,5 +131,12 @@ get_flash_model: first_time_setup: make_project build_ip get_flash_model +docs: + pdflatex --output-directory=./doc/tex/ ./doc/tex/megasoc_datasheet.tex + pdflatex --output-directory=./doc/tex/ ./doc/tex/megasoc_datasheet.tex + pdflatex --output-directory=./doc/tex/ ./doc/tex/megasoc_configuration_manual.tex + pdflatex --output-directory=./doc/tex/ ./doc/tex/megasoc_configuration_manual.tex + mv ./doc/tex/megasoc_datasheet.pdf ./doc/megasoc_datasheet.pdf + mv ./doc/tex/megasoc_configuration_manual.pdf ./doc/megasoc_configuration_manual.pdf clean: clean_sim clean_all_code \ No newline at end of file diff --git a/megasoc_chip/chip/logical/megasoc_chip.v b/megasoc_chip/chip/logical/megasoc_chip.v index b6233e1..575960c 100644 --- a/megasoc_chip/chip/logical/megasoc_chip.v +++ b/megasoc_chip/chip/logical/megasoc_chip.v @@ -12,8 +12,9 @@ // megasoc_system module megasoc_chip( - input wire CLK_IN, - input wire nRESET, + input wire CLK_IN, // Main system clock input + input wire RT_CLK, // 32kHz real time clock + input wire nRESET, // QSPI signals output wire QSPI_SCLK, @@ -27,6 +28,16 @@ module megasoc_chip( output wire UARTTXD, output wire UARTTXEN, + // FT1248 Signals + output wire FT_CLK_O, // SCLK + output wire FT_SSN_O, // SS_N + input wire FT_MISO_I, // MISO + output wire FT_MIOSIO_O, // MIOSIO tristate output when enabled + output wire FT_MIOSIO_E, // MIOSIO tristate output enable (active hi) + output wire FT_MIOSIO_Z, // MIOSIO tristate output enable (active lo) + input wire FT_MIOSIO_I, // MIOSIO tristate input + + // DAP-lite Signals input wire nTRST, input wire SWCLKTCK, @@ -41,15 +52,27 @@ module megasoc_chip( megasoc_system u_megasoc_system( .CLK_IN(CLK_IN), + .RT_CLK(RT_CLK), .nRESET(nRESET), + .QSPI_SCLK(QSPI_SCLK), .QSPI_nCS(QSPI_nCS), .QSPI_IO_o(QSPI_IO_o), .QSPI_IO_i(QSPI_IO_i), .QSPI_IO_e(QSPI_IO_e), + .UARTRXD(UARTRXD), .UARTTXD(UARTTXD), .UARTTXEN(UARTTXEN), + + .FT_CLK_O(FT_CLK_O), + .FT_SSN_O(FT_SSN_O), + .FT_MISO_I(FT_MISO_I), + .FT_MIOSIO_O(FT_MIOSIO_O), + .FT_MIOSIO_E(FT_MIOSIO_E), + .FT_MIOSIO_Z(FT_MIOSIO_Z), + .FT_MIOSIO_I(FT_MIOSIO_I), + .nTRST(nTRST), .SWCLKTCK(SWCLKTCK), .SWDITMS(SWDITMS), diff --git a/megasoc_chip/pads/glib/logical/megasoc_chip_pads.v b/megasoc_chip/pads/glib/logical/megasoc_chip_pads.v index 6dd410f..ccb8d01 100644 --- a/megasoc_chip/pads/glib/logical/megasoc_chip_pads.v +++ b/megasoc_chip/pads/glib/logical/megasoc_chip_pads.v @@ -22,6 +22,8 @@ module megasoc_chip_pads( // Clocks and Reset input wire REF_CLK_XTAL1, output wire REF_CLK_XTAL2, + input wire RT_CLK_XTAL1, + output wire RT_CLK_XTAL2, input wire PORESTn, input wire nSRST, @@ -45,7 +47,13 @@ module megasoc_chip_pads( // QSPI Interface output wire QSPI_SCLK, inout wire [3:0] QSPI_IO, - output wire QSPI_nCS + output wire QSPI_nCS, + + // FT1248 + output wire FT_CLK, // SCLK + output wire FT_SSN, // SS_N + input wire FT_MISO, // MISO + inout wire FT_MIOSIO // MIOSIO // Ethernet @@ -56,6 +64,7 @@ module megasoc_chip_pads( ); +// QSPI wire [3:0] QSPI_IO_o; wire [3:0] QSPI_IO_i; wire [3:0] QSPI_IO_e; @@ -70,19 +79,41 @@ assign QSPI_IO_i[1] = QSPI_IO[1]; assign QSPI_IO_i[2] = QSPI_IO[2]; assign QSPI_IO_i[3] = QSPI_IO[3]; +// FT1248 +wire FT_MIOSIO_O; +wire FT_MIOSIO_E; +wire FT_MIOSIO_Z; +wire FT_MIOSIO_I; + +assign FT_MIOSIO = FT_MIOSIO_E ? FT_MIOSIO_O : 1'bz; + +assign FT_MIOSIO_I = FT_MIOSIO; + assign REF_CLK_XTAL2 = REF_CLK_XTAL1; +assign RT_CLK_XTAL2 = RT_CLK_XTAL1; megasoc_chip u_megasoc_chip( .CLK_IN(REF_CLK_XTAL1), + .RT_CLK(RT_CLK_XTAL1), .nRESET(PORESTn), .QSPI_SCLK(QSPI_SCLK), .QSPI_nCS(QSPI_nCS), .QSPI_IO_o(QSPI_IO_o), .QSPI_IO_i(QSPI_IO_i), .QSPI_IO_e(QSPI_IO_e), + .UARTRXD(), .UARTTXD(), .UARTTXEN(), + + .FT_CLK_O(FT_CLK), + .FT_SSN_O(FT_SSN), + .FT_MISO_I(FT_MISO), + .FT_MIOSIO_O(FT_MIOSIO_O), + .FT_MIOSIO_E(FT_MIOSIO_E), + .FT_MIOSIO_Z(FT_MIOSIO_Z), + .FT_MIOSIO_I(FT_MIOSIO_I), + .nTRST(), .SWCLKTCK(), .SWDITMS(), diff --git a/megasoc_system/logical/megasoc_system.v b/megasoc_system/logical/megasoc_system.v index 31bc963..8e9b6f9 100644 --- a/megasoc_system/logical/megasoc_system.v +++ b/megasoc_system/logical/megasoc_system.v @@ -14,8 +14,9 @@ `include "gen_defines.v" module megasoc_system( - input wire CLK_IN, - input wire nRESET, + input wire CLK_IN, + input wire RT_CLK, // 32kHz real time clock + input wire nRESET, // QSPI Signals output wire QSPI_SCLK, @@ -29,6 +30,15 @@ module megasoc_system( output wire UARTTXD, output wire UARTTXEN, + // FT1248 Signals + output wire FT_CLK_O, // SCLK + output wire FT_SSN_O, // SS_N + input wire FT_MISO_I, // MISO + output wire FT_MIOSIO_O, // MIOSIO tristate output when enabled + output wire FT_MIOSIO_E, // MIOSIO tristate output enable (active hi) + output wire FT_MIOSIO_Z, // MIOSIO tristate output enable (active lo) + input wire FT_MIOSIO_I, // MIOSIO tristate input + // DAP-LITE external signals input wire nTRST, input wire SWCLKTCK, @@ -42,6 +52,64 @@ module megasoc_system( ); + +// DMA 350 APB Interface Wires +wire [31:0] PADDR_DMA_CTRL; +wire [31:0] PWDATA_DMA_CTRL; +wire PWRITE_DMA_CTRL; +wire [2:0] PPROT_DMA_CTRL; +wire [3:0] PSTRB_DMA_CTRL; +wire PENABLE_DMA_CTRL; +wire PSELx_DMA_CTRL; +wire [31:0] PRDATA_DMA_CTRL; +wire PSLVERR_DMA_CTRL; +wire PREADY_DMA_CTRL; + +// DMA 350 AXI Interface Wires +wire [1:0] AWID_DMA350; +wire [43:0] AWADDR_DMA350; +wire [7:0] AWLEN_DMA350; +wire [2:0] AWSIZE_DMA350; +wire [1:0] AWBURST_DMA350; +wire AWLOCK_DMA350; +wire [3:0] AWCACHE_DMA350; +wire [2:0] AWPROT_DMA350; +wire AWVALID_DMA350; +wire AWREADY_DMA350; + +wire [127:0] WDATA_DMA350; +wire [15:0] WSTRB_DMA350; +wire WLAST_DMA350; +wire WVALID_DMA350; +wire WREADY_DMA350; + +wire [1:0] BID_DMA350; +wire [1:0] BRESP_DMA350; +wire BVALID_DMA350; +wire BREADY_DMA350; + +wire [1:0] ARID_DMA350; +wire [43:0] ARADDR_DMA350; +wire [7:0] ARLEN_DMA350; +wire [2:0] ARSIZE_DMA350; +wire [1:0] ARBURST_DMA350; +wire ARLOCK_DMA350; +wire [3:0] ARCACHE_DMA350; +wire [2:0] ARPROT_DMA350; +wire ARVALID_DMA350; +wire ARREADY_DMA350; + +wire [1:0] RID_DMA350; +wire [127:0] RDATA_DMA350; +wire [1:0] RRESP_DMA350; +wire RLAST_DMA350; +wire RVALID_DMA350; +wire RREADY_DMA350; + +wire [3:0] DMA350_irq_channel; +wire DMA350_irq_comb_nonsec; + + wire [1:0] AXI_SYS_EXP_awid; wire [31:0] AXI_SYS_EXP_awaddr; wire [7:0] AXI_SYS_EXP_awlen; @@ -117,6 +185,7 @@ wire AXI_EXP_SYS_rready; megasoc_tech_wrapper u_megasoc_tech_wrapper( .SYS_CLK(CLK_IN), .SYS_CLKEN(1'b1), + .RT_CLK(RT_CLK), .SYS_RESETn(nRESET), // Millisoc system AXI Manager @@ -193,6 +262,58 @@ megasoc_tech_wrapper u_megasoc_tech_wrapper( .AXI_EXP_SYS_rlast(AXI_EXP_SYS_rlast), .AXI_EXP_SYS_rvalid(AXI_EXP_SYS_rvalid), .AXI_EXP_SYS_rready(AXI_EXP_SYS_rready), + + + .PADDR_DMA_CTRL(PADDR_DMA_CTRL), + .PWDATA_DMA_CTRL(PWDATA_DMA_CTRL), + .PWRITE_DMA_CTRL(PWRITE_DMA_CTRL), + .PPROT_DMA_CTRL(PPROT_DMA_CTRL), + .PSTRB_DMA_CTRL(PSTRB_DMA_CTRL), + .PENABLE_DMA_CTRL(PENABLE_DMA_CTRL), + .PSELx_DMA_CTRL(PSELx_DMA_CTRL), + .PRDATA_DMA_CTRL(PRDATA_DMA_CTRL), + .PSLVERR_DMA_CTRL(PSLVERR_DMA_CTRL), + .PREADY_DMA_CTRL(PREADY_DMA_CTRL), + + .AWID_DMA350(AWID_DMA350), + .AWADDR_DMA350(AWADDR_DMA350), + .AWLEN_DMA350(AWLEN_DMA350), + .AWSIZE_DMA350(AWSIZE_DMA350), + .AWBURST_DMA350(AWBURST_DMA350), + .AWLOCK_DMA350(AWLOCK_DMA350), + .AWCACHE_DMA350(AWCACHE_DMA350), + .AWPROT_DMA350(AWPROT_DMA350), + .AWVALID_DMA350(AWVALID_DMA350), + .AWREADY_DMA350(AWREADY_DMA350), + .WDATA_DMA350(WDATA_DMA350), + .WSTRB_DMA350(WSTRB_DMA350), + .WLAST_DMA350(WLAST_DMA350), + .WVALID_DMA350(WVALID_DMA350), + .WREADY_DMA350(WREADY_DMA350), + .BID_DMA350(BID_DMA350), + .BRESP_DMA350(BRESP_DMA350), + .BVALID_DMA350(BVALID_DMA350), + .BREADY_DMA350(BREADY_DMA350), + .ARID_DMA350(ARID_DMA350), + .ARADDR_DMA350(ARADDR_DMA350), + .ARLEN_DMA350(ARLEN_DMA350), + .ARSIZE_DMA350(ARSIZE_DMA350), + .ARBURST_DMA350(ARBURST_DMA350), + .ARLOCK_DMA350(ARLOCK_DMA350), + .ARCACHE_DMA350(ARCACHE_DMA350), + .ARPROT_DMA350(ARPROT_DMA350), + .ARVALID_DMA350(ARVALID_DMA350), + .ARREADY_DMA350(ARREADY_DMA350), + .RID_DMA350(RID_DMA350), + .RDATA_DMA350(RDATA_DMA350), + .RRESP_DMA350(RRESP_DMA350), + .RLAST_DMA350(RLAST_DMA350), + .RVALID_DMA350(RVALID_DMA350), + .RREADY_DMA350(RREADY_DMA350), + + .DMA350_irq_channel(DMA350_irq_channel), + .DMA350_irq_comb_nonsec(DMA350_irq_comb_nonsec), + .QSPI_SCLK(QSPI_SCLK), .QSPI_nCS(QSPI_nCS), .QSPI_IO_o(QSPI_IO_o), @@ -201,6 +322,15 @@ megasoc_tech_wrapper u_megasoc_tech_wrapper( .UARTRXD(UARTRXD), .UARTTXD(UARTTXD), .UARTTXEN(UARTTXEN), + + .FT_CLK_O(FT_CLK_O), + .FT_SSN_O(FT_SSN_O), + .FT_MISO_I(FT_MISO_I), + .FT_MIOSIO_O(FT_MIOSIO_O), + .FT_MIOSIO_E(FT_MIOSIO_E), + .FT_MIOSIO_Z(FT_MIOSIO_Z), + .FT_MIOSIO_I(FT_MIOSIO_I), + .nTRST(nTRST), .SWCLKTCK(SWCLKTCK), .SWDITMS(SWDITMS), @@ -211,6 +341,76 @@ megasoc_tech_wrapper u_megasoc_tech_wrapper( .SWDOEN(SWDOEN) ); + +megasoc_tech_system_wrapper u_megasoc_tech_system_wrapper( + .CLK(CLK_IN), + .RESETn(nRESET), + + .DMA350_PWAKEUP(1'b1), + .DMA350_PDEBUG(1'b0), + .DMA350_PSEL(PSELx_DMA_CTRL), + .DMA350_PENABLE(PENABLE_DMA_CTRL), + .DMA350_PPROT(PPROT_DMA_CTRL), + .DMA350_PWRITE(PWRITE_DMA_CTRL), + .DMA350_PADDR(PADDR_DMA_CTRL), + .DMA350_PWDATA(PWDATA_DMA_CTRL), + .DMA350_PSTRB(PSTRB_DMA_CTRL), + .DMA350_PREADY(PREADY_DMA_CTRL), + .DMA350_PSLVERR(PSLVERR_DMA_CTRL), + .DMA350_PRDATA(PRDATA_DMA_CTRL), + + .DMA350_AWAKEUP_M0(), + .DMA350_AWVALID_M0(AWVALID_DMA350), + .DMA350_AWADDR_M0(AWADDR_DMA350), + .DMA350_AWBURST_M0(AWBURST_DMA350), + .DMA350_AWID_M0(AWID_DMA350), + .DMA350_AWLEN_M0(AWLEN_DMA350), + .DMA350_AWSIZE_M0(AWSIZE_DMA350), + .DMA350_AWQOS_M0(), + .DMA350_AWPROT_M0(AWPROT_DMA350), + .DMA350_AWREADY_M0(AWREADY_DMA350), + .DMA350_AWCACHE_M0(AWCACHE_DMA350), + .DMA350_AWINNER_M0(), + .DMA350_AWDOMAIN_M0(), + + .DMA350_ARVALID_M0(ARVALID_DMA350), + .DMA350_ARADDR_M0(ARADDR_DMA350), + .DMA350_ARBURST_M0(ARBURST_DMA350), + .DMA350_ARID_M0(ARID_DMA350), + .DMA350_ARLEN_M0(ARLEN_DMA350), + .DMA350_ARSIZE_M0(ARSIZE_DMA350), + .DMA350_ARQOS_M0(), + .DMA350_ARPROT_M0(ARPROT_DMA350), + .DMA350_ARREADY_M0(ARREADY_DMA350), + .DMA350_ARCACHE_M0(ARCACHE_DMA350), + .DMA350_ARINNER_M0(), + .DMA350_ARDOMAIN_M0(), + .DMA350_ARCMDLINK_M0(), + + .DMA350_WVALID_M0(WVALID_DMA350), + .DMA350_WLAST_M0(WLAST_DMA350), + .DMA350_WSTRB_M0(WSTRB_DMA350), + .DMA350_WDATA_M0(WDATA_DMA350), + .DMA350_WREADY_M0(WREADY_DMA350), + + .DMA350_RVALID_M0(RVALID_DMA350), + .DMA350_RID_M0(RID_DMA350), + .DMA350_RLAST_M0(RLAST_DMA350), + .DMA350_RDATA_M0(RDATA_DMA350), + .DMA350_RPOISON_M0(2'b00), + .DMA350_RRESP_M0(RRESP_DMA350), + .DMA350_RREADY_M0(RREADY_DMA350), + + .DMA350_BVALID_M0(BVALID_DMA350), + .DMA350_BID_M0(BID_DMA350), + .DMA350_BRESP_M0(BRESP_DMA350), + .DMA350_BREADY_M0(BREADY_DMA350), + + .DMA350_irq_channel(DMA350_irq_channel), + .DMA350_irq_comb_nonsec(DMA350_irq_comb_nonsec) +); + + `ifdef INC_EXP expansion_subsystem_wrapper u_megasoc_expansion_wrapper( .sys_clk(), diff --git a/megasoc_tech b/megasoc_tech index 13691c8..43c6ae6 160000 --- a/megasoc_tech +++ b/megasoc_tech @@ -1 +1 @@ -Subproject commit 13691c8c10cb58199dc78da621b29d58b8b732de +Subproject commit 43c6ae6ac778989b0ea09101aea347d7c460729a diff --git a/verif/control/logical/megasoc_clkreset.v b/verif/control/logical/megasoc_clkreset.v index a26ac62..b59515b 100644 --- a/verif/control/logical/megasoc_clkreset.v +++ b/verif/control/logical/megasoc_clkreset.v @@ -38,6 +38,7 @@ module megasoc_clkreset( output wire CLK, + output wire CLK_RT, output wire NRST, output wire NRST_early, output wire NRST_late, @@ -45,20 +46,28 @@ module megasoc_clkreset( ); reg clock_q; + reg clock_rt; reg [15:0] shifter; initial begin clock_q <= 1'b0; + clock_rt <= 1'b0; shifter <= 16'h0000; #40 clock_q <= 1'b1; + clock_rt <= 1'b1; end - always @(clock_q) + always @(clock_q) #5 clock_q <= !clock_q; // 10ns period, 100MHz + + + always @(clock_rt) + #15259 clock_rt <= !clock_rt; // nearly 32.678 KHz assign CLK = clock_q; + assign CLK_RT = clock_rt; always @(posedge clock_q) if (! (&shifter)) // until full... diff --git a/verif/testbench/logical/megasoc_tb.sv b/verif/testbench/logical/megasoc_tb.sv index cb592f7..587e68d 100644 --- a/verif/testbench/logical/megasoc_tb.sv +++ b/verif/testbench/logical/megasoc_tb.sv @@ -17,15 +17,29 @@ module megasoc_tb(); `define CORTEXA53_UNIVENT_DPI_CAPTURE `define CORTEXA53_UNIVENT -wire EXT_CLK; +wire EXT_CLK; // 100 MHz crystal clock +wire RT_CLK; // 32.768 kHz crystal clock wire nRESET; wire QSPI_SCLK; wire [3:0] QSPI_IO; wire QSPI_nCS; +wire FT_CLK; +wire FT_SSN; +wire FT_MISO; +wire FT_MIOSIO; + +wire ft_miosio_i; +wire ft_miosio_o; +wire ft_miosio_z; + +assign ft_miosio_i = FT_MIOSIO; +bufif1 #1 (FT_MIOSIO, ft_miosio_o, !ft_miosio_z); + megasoc_clkreset u_megasoc_clkreset( .CLK(EXT_CLK), + .CLK_RT(RT_CLK), .NRST(nRESET) ); @@ -43,6 +57,8 @@ end megasoc_chip_pads u_megasoc_chip_pads( .REF_CLK_XTAL1(EXT_CLK), .REF_CLK_XTAL2(), + .RT_CLK_XTAL1(RT_CLK), + .RT_CLK_XTAL2(), .PORESTn(nRESET), .nSRST(nRESET), .GPIO_P0(), @@ -60,7 +76,11 @@ megasoc_chip_pads u_megasoc_chip_pads( .DBGACK(), .QSPI_SCLK(QSPI_SCLK), .QSPI_IO(QSPI_IO), - .QSPI_nCS(QSPI_nCS) + .QSPI_nCS(QSPI_nCS), + .FT_CLK(FT_CLK), + .FT_SSN(FT_SSN), + .FT_MISO(FT_MISO), + .FT_MIOSIO(FT_MIOSIO) ); sst26vf064b FLASH( @@ -138,4 +158,68 @@ megasoc_qspi_capture #( .HRESP_o(`MEGASOC_QSPI_SUBSYSTEM.HRESP) ); + +wire rxd8_tvalid; +wire rxd8_tready; +wire[7:0] rxd8_tdata; + +megasoc_ft1248x1_to_axi_streamio_v1_0 u_ft1248_to_axi_stream( + .ft_clk_i(FT_CLK), + .ft_ssn_i(FT_SSN), + .ft_miso_o(FT_MISO), + .ft_miosio_i(ft_miosio_i), + .ft_miosio_o(ft_miosio_o), + .ft_miosio_z(ft_miosio_z), + .aclk(EXT_CLK), + .aresetn(nRESET), + .txd_tvalid_o(rxd8_tvalid), + .txd_tdata8_o(rxd8_tdata), + .txd_tready_i(rxd8_tready), + .rxd_tready_o(), + .rxd_tdata8_i(8'h00), + .rxd_tvalid_i(1'b0) +); + + +megasoc_axi_stream_io_8_rxd_to_file#( + .RXDFILENAME("logs/ft1248_out.log") +) u_megasoc_axi_stream_io_8_rxd_to_file ( + .aclk (EXT_CLK), + .aresetn (nRESET), + .eof_received ( ), + .rxd8_ready (rxd8_tready), + .rxd8_valid (rxd8_tvalid), + .rxd8_data (rxd8_tdata) + ); + + +wire ft_clk2uart; +wire ft_rxd2uart; +wire ft_txd2uart; + +megasoc_ft1248x1_track + u_megasoc_ft1248x1_track + ( + .ft_clk_i (FT_CLK), + .ft_ssn_i (FT_SSN), + .ft_miso_i (FT_MISO), + .ft_miosio_i (ft_miosio_i), + .aclk (EXT_CLK), + .aresetn (nRESET), + .FTDI_CLK2UART_o (ft_clk2uart), // Clock (baud rate) + .FTDI_OP2UART_o (ft_rxd2uart), // Received data to UART capture + .FTDI_IP2UART_o (ft_txd2uart) // Transmitted data to UART capture + ); + + megasoc_uart_capture #(.LOGFILENAME("logs/ft1248_op.log"), .VERBOSE(1)) + u_megasoc_uart_capture1( + .RESETn (nRESET), + .CLK (ft_clk2uart), + .RXD (ft_rxd2uart), + .DEBUG_TESTER_ENABLE ( ), //debug_test_en2), //driven by u_nanosoc_track_tb_iostream + .SIMULATIONEND (), // This signal set to 1 at the end of simulation. + .AUXCTRL () + ); + + endmodule diff --git a/verif/trace/megasoc_axi_stream_io_8_rxd_to_file.v b/verif/trace/megasoc_axi_stream_io_8_rxd_to_file.v new file mode 100644 index 0000000..cdff4c0 --- /dev/null +++ b/verif/trace/megasoc_axi_stream_io_8_rxd_to_file.v @@ -0,0 +1,81 @@ +//----------------------------------------------------------------------------- +// customised example Cortex-M0 controller UART with file logging +// A joint work commissioned on behalf of SoC Labs, under Arm Academic Access license. +// +// Contributors +// +// David Flynn (d.w.flynn@soton.ac.uk) +// +// Copyright (C) 2023, SoC Labs (www.soclabs.org) +//----------------------------------------------------------------------------- + +//----------------------------------------------------------------------------- +// Abstract : FT1248 1-bit data off-chip interface (emulate FT232H device) +// and allows cmsdk_uart_capture testbench models to log ADP ip, op streams +//----------------------------------------------------------------------------- + + +module megasoc_axi_stream_io_8_rxd_to_file + #(parameter RXDFILENAME = "rxd.log", + parameter VERBOSE = 0) + ( + input wire aclk, + input wire aresetn, + output wire eof_received, + output wire rxd8_ready, + input wire rxd8_valid, + input wire [7:0] rxd8_data + ); + + //---------------------------------------------- + //-- File I/O + //---------------------------------------------- + + + integer fd; // channel descriptor for cmd file input + integer ch; +`define EOF -1 + + reg ready; + reg [7:0] data8; + + reg nxt_end_simulation; + reg reg_end_simulation; + +assign eof_received = nxt_end_simulation; + + initial + begin + ready <= 0; + nxt_end_simulation <= 1'b0; + reg_end_simulation <= 1'b0; + fd= $fopen(RXDFILENAME,"w"); + if (fd == 0) + $write("** %m : output log file failed to open **\n"); + else begin + @(posedge aresetn); + while (!nxt_end_simulation) begin + @(posedge aclk); + ready <= 1'b1; + @(posedge aclk); + while (rxd8_valid == 1'b0) + @(posedge aclk); + ready <=0; + data8 <= rxd8_data; + ch = (rxd8_data & 8'hff); + if (ch==8'h04) // Stop simulation if 0x04 is received + nxt_end_simulation <= 1'b1; + else begin + $fwrite(fd, "%c", ch); + if (VERBOSE) $write("%c", ch); + end + end + $write("** %m : log file closed after stream RX terminated **\n"); + $fclose(fd); + ready <= 0; + end + end + +assign rxd8_ready = ready ; + +endmodule diff --git a/verif/trace/megasoc_ft1248x1_track.v b/verif/trace/megasoc_ft1248x1_track.v new file mode 100644 index 0000000..a6f3091 --- /dev/null +++ b/verif/trace/megasoc_ft1248x1_track.v @@ -0,0 +1,125 @@ +//----------------------------------------------------------------------------- +// FT1248 1-bit-data to 8-bit AXI-Stream IO +// A joint work commissioned on behalf of SoC Labs, under Arm Academic Access license. +// +// Contributors +// +// David Flynn (d.w.flynn@soton.ac.uk) +// +// Copyright (C) 2022-3, SoC Labs (www.soclabs.org) +//----------------------------------------------------------------------------- + +//----------------------------------------------------------------------------- +// Abstract : FT1248 1-bit data off-chip interface (emulate FT232H device) +//----------------------------------------------------------------------------- + + module megasoc_ft1248x1_track + ( + input wire ft_clk_i, // SCLK + input wire ft_ssn_i, // SS_N + input wire ft_miso_i, // MISO + input wire ft_miosio_i, // MIOSIO tristate signal input + + input wire aclk, // external primary clock + input wire aresetn, // external reset (active low) + + output wire FTDI_CLK2UART_o, // Clock (baud rate) + output wire FTDI_OP2UART_o, // Received data to UART capture + output wire FTDI_IP2UART_o // Transmitted data to UART capture + ); + +//wire ft_clk; +wire ft_clk_rising; +wire ft_clk_falling; + +wire ft_ssn; +wire ft_miosio_i_del; + +SYNCHRONIZER_EDGES u_sync_ft_clk ( + .testmode_i(1'b0), + .clk_i(aclk), + .reset_n_i(aresetn), + .asyn_i(ft_clk_i), + .syn_o(), + .syn_del_o(), + .posedge_o(ft_clk_rising), + .negedge_o(ft_clk_falling) + ); + +SYNCHRONIZER_EDGES u_sync_ft_ssn ( + .testmode_i(1'b0), + .clk_i(aclk), + .reset_n_i(aresetn), + .asyn_i(ft_ssn_i), + .syn_o(ft_ssn), + .syn_del_o(), + .posedge_o( ), + .negedge_o( ) + ); + +SYNCHRONIZER_EDGES u_sync_ft_din ( + .testmode_i(1'b0), + .clk_i(aclk), + .reset_n_i(aresetn), + .asyn_i(ft_miosio_i), + .syn_o( ), + .syn_del_o(ft_miosio_i_del), + .posedge_o( ), + .negedge_o( ) + ); + +//---------------------------------------------- +//-- FT1248 1-bit protocol State Machine +//---------------------------------------------- + +reg [4:0] ft_state; // 17-state for bit-serial +wire [4:0] ft_nextstate = ft_state + 5'b00001; + +// advance state count on rising edge of ft_clk +always @(posedge aclk or negedge aresetn) + if (!aresetn) + ft_state <= 5'b11111; + else if (ft_ssn) // sync reset + ft_state <= 5'b11111; + else if (ft_clk_rising) // loop if multi-data +// ft_state <= (ft_state == 5'b01111) ? 5'b01000 : ft_nextstate; + ft_state <= ft_nextstate; + +// 16: bus turnaround (or bit[5]) +// 0 for CMD3 +// 3 for CMD2 +// 5 for CMD1 +// 6 for CMD0 +// 7 for cmd turnaround +// 8 for data bit0 +// 9 for data bit1 +// 10 for data bit2 +// 11 for data bit3 +// 12 for data bit4 +// 13 for data bit5 +// 14 for data bit6 +// 15 for data bit7 + +// capture 7-bit CMD on falling edge of clock (mid-data) +reg [7:0] ft_cmd; +// - valid sample ready after 7th edge (ready RX or TX data phase functionality) +always @(posedge aclk or negedge aresetn) + if (!aresetn) + ft_cmd <= 8'b00000001; + else if (ft_ssn) // sync reset + ft_cmd <= 8'b00000001; + else if (ft_clk_falling & !ft_state[3] & !ft_nextstate[3]) // on shift if CMD phase) + ft_cmd <= {ft_cmd[6:0],ft_miosio_i}; + +wire ft_cmd_valid = ft_cmd[7]; +wire ft_cmd_rxd = ft_cmd[7] & !ft_cmd[6] & !ft_cmd[3] & !ft_cmd[1] & ft_cmd[0]; +wire ft_cmd_txd = ft_cmd[7] & !ft_cmd[6] & !ft_cmd[3] & !ft_cmd[1] & !ft_cmd[0]; + +// serial data formatted with start bit for UART capture (on rising uart-clock) +assign FTDI_CLK2UART_o = !ft_clk_i; +// suitable for CMSDK UART capture IO +// inject a start bit low else mark high +assign FTDI_OP2UART_o = (ft_cmd_txd & (ft_state[4:3]) == 2'b01) ? ft_miosio_i_del : !(ft_cmd_txd & (ft_state == 5'b00111)); +assign FTDI_IP2UART_o = (ft_cmd_rxd & (ft_state[4:3]) == 2'b01) ? ft_miosio_i : !(ft_cmd_rxd & (ft_state == 5'b00111)); + +endmodule diff --git a/verif/trace/megasoc_ft1248x4_to_axi_streamio_v1_0.v b/verif/trace/megasoc_ft1248x4_to_axi_streamio_v1_0.v new file mode 100644 index 0000000..159775b --- /dev/null +++ b/verif/trace/megasoc_ft1248x4_to_axi_streamio_v1_0.v @@ -0,0 +1,214 @@ +//----------------------------------------------------------------------------- +// FT1248 1-bit-data to 8-bit AXI-Stream IO +// A joint work commissioned on behalf of SoC Labs, under Arm Academic Access license. +// +// Contributors +// +// David Flynn (d.w.flynn@soton.ac.uk) +// +// Copyright (C) 2022-3, SoC Labs (www.soclabs.org) +//----------------------------------------------------------------------------- + +//----------------------------------------------------------------------------- +// Abstract : FT1248 1-bit data off-chip interface (emulate FT232H device) +//----------------------------------------------------------------------------- + + module megasoc_ft1248x1_to_axi_streamio_v1_0 # + ( + // Users to add parameters here + + // User parameters ends + // Do not modify the parameters beyond this line + + + // Parameters of Axi Stream Bus Interface rxd8 + parameter integer C_rxd8_TDATA_WIDTH = 8, + + // Parameters of Axi Stream Bus Interface txd8 + parameter integer C_txd8_TDATA_WIDTH = 8 + ) + ( + input wire ft_clk_i, // SCLK + input wire ft_ssn_i, // SS_N + output wire ft_miso_o, // MISO +// inout wire ft_miosio_io, // MIOSIO tristate output control + input wire ft_miosio_i, + output wire ft_miosio_o, + output wire ft_miosio_z, + + input wire aclk, // external primary clock + input wire aresetn, // external reset (active low) + + // Ports of Axi stream Bus Interface TXD + output wire txd_tvalid_o, + output wire [7 : 0] txd_tdata8_o, + input wire txd_tready_i, + + // Ports of Axi stream Bus Interface RXD + output wire rxd_tready_o, + input wire [7 : 0] rxd_tdata8_i, + input wire rxd_tvalid_i + + ); + +//wire ft_clk; +wire ft_clk_rising; +wire ft_clk_falling; + +wire ft_ssn; +wire ft_miosio_i_del; + +SYNCHRONIZER_EDGES u_sync_ft_clk ( + .testmode_i(1'b0), + .clk_i(aclk), + .reset_n_i(aresetn), + .asyn_i(ft_clk_i), + .syn_o(), + .syn_del_o(), + .posedge_o(ft_clk_rising), + .negedge_o(ft_clk_falling) + ); + +SYNCHRONIZER_EDGES u_sync_ft_ssn ( + .testmode_i(1'b0), + .clk_i(aclk), + .reset_n_i(aresetn), + .asyn_i(ft_ssn_i), + .syn_o(ft_ssn), + .syn_del_o(), + .posedge_o( ), + .negedge_o( ) + ); + +SYNCHRONIZER_EDGES u_sync_ft_din ( + .testmode_i(1'b0), + .clk_i(aclk), + .reset_n_i(aresetn), + .asyn_i(ft_miosio_i), + .syn_o( ), + .syn_del_o(ft_miosio_i_del), + .posedge_o( ), + .negedge_o( ) + ); + +//---------------------------------------------- +//-- FT1248 1-bit protocol State Machine +//---------------------------------------------- + +reg [4:0] ft_state; // 17-state for bit-serial +wire [4:0] ft_nextstate = ft_state + 5'b00001; + +// advance state count on rising edge of ft_clk +always @(posedge aclk or negedge aresetn) + if (!aresetn) + ft_state <= 5'b11111; + else if (ft_ssn) // sync reset + ft_state <= 5'b11111; + else if (ft_clk_rising) // loop if multi-data +// ft_state <= (ft_state == 5'b01111) ? 5'b01000 : ft_nextstate; + ft_state <= ft_nextstate; + +// 16: bus turnaround (or bit[5]) +// 0 for CMD3 +// 3 for CMD2 +// 5 for CMD1 +// 6 for CMD0 +// 7 for cmd turnaround +// 8 for data bit0 +// 9 for data bit1 +// 10 for data bit2 +// 11 for data bit3 +// 12 for data bit4 +// 13 for data bit5 +// 14 for data bit6 +// 15 for data bit7 + +// capture 7-bit CMD on falling edge of clock (mid-data) +reg [7:0] ft_cmd; +// - valid sample ready after 7th edge (ready RX or TX data phase functionality) +always @(posedge aclk or negedge aresetn) + if (!aresetn) + ft_cmd <= 8'b00000001; + else if (ft_ssn) // sync reset + ft_cmd <= 8'b00000001; + else if (ft_clk_falling & !ft_state[3] & !ft_nextstate[3]) // on shift if CMD phase) + ft_cmd <= {ft_cmd[6:0],ft_miosio_i}; + +wire ft_cmd_valid = ft_cmd[7]; +wire ft_cmd_rxd = ft_cmd[7] & !ft_cmd[6] & !ft_cmd[3] & !ft_cmd[1] & ft_cmd[0]; +wire ft_cmd_txd = ft_cmd[7] & !ft_cmd[6] & !ft_cmd[3] & !ft_cmd[1] & !ft_cmd[0]; + +// tristate enable for miosio (deselected status or serialized data for read command) +wire ft_miosio_e = ft_ssn_i | (ft_cmd_rxd & !ft_state[4] & ft_state[3]); +assign ft_miosio_z = !ft_miosio_e; + +// capture (ft_cmd_txd) serial data out on falling edge of clock +// bit [0] indicated byte valid +reg [7:0] rxd_sr; +always @(posedge aclk or negedge aresetn) + if (!aresetn) + rxd_sr <= 8'b00000000; + else if (ft_ssn) // sync reset + rxd_sr <= 8'b00000000; + else if (ft_clk_falling & ft_cmd_txd & (ft_state[4:3] == 2'b01)) //serial shift + rxd_sr <= {ft_miosio_i_del, rxd_sr[7:1]}; + +// AXI STREAM handshake interfaces +// TX stream delivers valid FT1248 read data transfer +// 8-bit write port with extra top-bit used as valid qualifer +reg [8:0] txstream; +always @(posedge aclk or negedge aresetn) + if (!aresetn) + txstream <= 9'b000000000; + else if (txstream[8] & txd_tready_i) // priority clear stream data valid when accepted + txstream[8] <= 1'b0; + else if (ft_clk_falling & ft_cmd_txd & (ft_state==5'b01111)) //load as last shift arrives + txstream[8:0] <= {1'b1, ft_miosio_i_del, rxd_sr[7:1]}; + +assign txd_tvalid_o = txstream[8]; +assign txd_tdata8_o = txstream[7:0]; + + +// AXI STREAM handshake interfaces +// RX stream accepts 8-bit data to transfer over FT1248 channel +// 8-bit write port with extra top-bit used as valid qualifer + +reg [8:0] rxstream; +reg rxstream_valid; +always @(posedge aclk or negedge aresetn) + if (!aresetn) begin + rxstream <= 9'b000000000; + rxstream_valid <= 1'b0; + end else if (!rxstream[8] & rxd_tvalid_i) begin// if empty can accept valid RX stream data + rxstream_valid <= 1'b1; + rxstream[8:0] <= {1'b1,rxd_tdata8_i}; + end else if (rxstream[8] & ft_clk_rising & ft_cmd_rxd & (ft_state==5'b01110)) begin// hold until final shift completion + rxstream[8] <= 1'b0; + rxstream_valid <= 1'b0; + end +assign rxd_tready_o = !rxstream[8]; // ready until loaded + + +// shift TXD on rising edge of clock +reg [8:0] txd_sr; +// rewrite for clocked +always @(posedge aclk or negedge aresetn) + if (!aresetn) + txd_sr <= 8'b00000000; + else if (ft_ssn) // sync reset + txd_sr <= 8'b00000000; + else if (ft_clk_falling & ft_cmd_rxd & rxstream_valid & (ft_state == 5'b00111)) + txd_sr <= rxstream[7:0]; + else if (ft_clk_rising & ft_cmd_rxd & (ft_state[4:3] == 2'b01)) //serial shift + txd_sr <= {1'b0,txd_sr[7:1]}; + +//FT1248 FIFO status signals + +// ft_miso_o reflects TXF when deselected +assign ft_miosio_o = (ft_ssn_i) ? txstream[8] : txd_sr[0]; + +// ft_miso_o reflects RXE when deselected +//assign ft_miso_o = (ft_ssn_i) ? !rxd_tvalid_i : ((ft_state == 5'b00111) & ((ft_cmd_txd) ? txstream[8]: !rxd_tvalid_i)); +assign ft_miso_o = (ft_ssn_i) ? !rxstream[8] : ((ft_state == 5'b00111) & ((ft_cmd_txd) ? txstream[8]: !rxstream[8])); + +endmodule -- GitLab