add eem0 and eem2 port support; eem0 input working

This commit is contained in:
mikelam 2022-02-04 16:33:41 +08:00
parent cf76348432
commit 34042d1c59
4 changed files with 8411 additions and 8342 deletions

File diff suppressed because it is too large Load Diff

View File

@ -78,6 +78,23 @@ set_io --warn-no-port FSMC_NE1 A16
set_io --warn-no-port eem0_n_0 N4
set_io --warn-no-port eem0_p_0 R1
set_io --warn-no-port eem0_n_1 N2
set_io --warn-no-port eem0_p_1 L7
set_io --warn-no-port eem0_n_2 G2
set_io --warn-no-port eem0_p_2 H4
set_io --warn-no-port eem0_n_3 L3
set_io --warn-no-port eem0_p_3 L6
set_io --warn-no-port eem0_n_4 F2
set_io --warn-no-port eem0_p_4 H3
set_io --warn-no-port eem0_n_5 L1
set_io --warn-no-port eem0_p_5 L4
set_io --warn-no-port eem0_n_6 E3
set_io --warn-no-port eem0_p_6 G4
set_io --warn-no-port eem0_n_7 H2
set_io --warn-no-port eem0_p_7 J4
set_io --warn-no-port eem1_n_0 M5 set_io --warn-no-port eem1_n_0 M5
set_io --warn-no-port eem1_p_0 P2 set_io --warn-no-port eem1_p_0 P2
set_io --warn-no-port eem1_n_1 M4 set_io --warn-no-port eem1_n_1 M4
@ -94,3 +111,20 @@ set_io --warn-no-port eem1_n_6 H1
set_io --warn-no-port eem1_p_6 J3 set_io --warn-no-port eem1_p_6 J3
set_io --warn-no-port eem1_n_7 G1 set_io --warn-no-port eem1_n_7 G1
set_io --warn-no-port eem1_p_7 J5 set_io --warn-no-port eem1_p_7 J5
set_io --warn-no-port eem2_n_0 F1
set_io --warn-no-port eem2_p_0 H6
set_io --warn-no-port eem2_n_1 E2
set_io --warn-no-port eem2_p_1 H5
set_io --warn-no-port eem2_n_2 D2
set_io --warn-no-port eem2_p_2 F4
set_io --warn-no-port eem2_n_3 D1
set_io --warn-no-port eem2_p_3 G5
set_io --warn-no-port eem2_n_4 C2
set_io --warn-no-port eem2_p_4 C1
set_io --warn-no-port eem2_n_5 B1
set_io --warn-no-port eem2_p_5 F5
set_io --warn-no-port eem2_n_6 F3
set_io --warn-no-port eem2_p_6 G3
set_io --warn-no-port eem2_n_7 B2
set_io --warn-no-port eem2_p_7 E4

View File

@ -20,28 +20,62 @@ module top (
output DIO_IO_SEL, output DIO_IO_SEL,
output [2:0]DIO_CH_SEL, output [2:0]DIO_CH_SEL,
output eem1_n_0, inout eem0_n_0,
output eem1_p_0, inout eem0_p_0,
output eem1_n_1, inout eem0_n_1,
output eem1_p_1, inout eem0_p_1,
inout eem0_n_2,
inout eem0_p_2,
inout eem0_n_3,
inout eem0_p_3,
inout eem0_n_4,
inout eem0_p_4,
inout eem0_n_5,
inout eem0_p_5,
inout eem0_n_6,
inout eem0_p_6,
inout eem0_n_7,
inout eem0_p_7,
inout eem1_n_0,
inout eem1_p_0,
inout eem1_n_1,
inout eem1_p_1,
inout eem1_n_2, inout eem1_n_2,
output eem1_p_2, inout eem1_p_2,
output eem1_n_3, inout eem1_n_3,
output eem1_p_3, inout eem1_p_3,
output eem1_n_4, inout eem1_n_4,
output eem1_p_4, inout eem1_p_4,
output eem1_n_5, inout eem1_n_5,
output eem1_p_5, inout eem1_p_5,
output eem1_n_6, inout eem1_n_6,
output eem1_p_6, inout eem1_p_6,
output eem1_n_7, inout eem1_n_7,
output eem1_p_7, inout eem1_p_7,
inout eem2_n_0,
inout eem2_p_0,
inout eem2_n_1,
inout eem2_p_1,
inout eem2_n_2,
inout eem2_p_2,
inout eem2_n_3,
inout eem2_p_3,
inout eem2_n_4,
inout eem2_p_4,
inout eem2_n_5,
inout eem2_p_5,
inout eem2_n_6,
inout eem2_p_6,
inout eem2_n_7,
inout eem2_p_7,
); );
/* LED */ /* LED */
reg [31:0] counter = 32'b0; reg [31:0] counter = 32'b0;
assign LED = counter[24]; // assign LED = counter[24];
// assign LED = ~KEY; // assign LED = ~KEY;
always @ (posedge CLK_25M) begin always @ (posedge CLK_25M) begin
@ -123,35 +157,33 @@ module top (
wire eem_ch6; wire eem_ch6;
wire eem_ch7; wire eem_ch7;
assign eem1_n_0 = eem_ch0; assign eem0_n_0 = eem_ch0;
assign eem1_p_0 = ~eem_ch0; assign eem0_p_0 = ~eem_ch0;
assign eem1_n_1 = eem_ch1; // assign eem0_n_1 = eem_ch1;
assign eem1_p_1 = ~eem_ch1; // assign eem0_p_1 = ~eem_ch1;
assign eem1_n_2 = eem_ch2; assign eem0_n_2 = eem_ch2;
assign eem1_p_2 = ~eem_ch2; assign eem0_p_2 = ~eem_ch2;
assign eem1_n_3 = eem_ch3; assign eem0_n_3 = eem_ch3;
assign eem1_p_3 = ~eem_ch3; assign eem0_p_3 = ~eem_ch3;
assign eem1_n_4 = eem_ch4; assign eem0_n_4 = eem_ch4;
assign eem1_p_4 = ~eem_ch4; assign eem0_p_4 = ~eem_ch4;
assign eem1_n_5 = eem_ch5; assign eem0_n_5 = eem_ch5;
assign eem1_p_5 = ~eem_ch5; assign eem0_p_5 = ~eem_ch5;
assign eem1_n_6 = eem_ch6; assign eem0_n_6 = eem_ch6;
assign eem1_p_6 = ~eem_ch6; assign eem0_p_6 = ~eem_ch6;
assign eem1_n_7 = eem_ch7; assign eem0_n_7 = eem_ch7;
assign eem1_p_7 = ~eem_ch7; assign eem0_p_7 = ~eem_ch7;
wire d_in; SB_IO #(
.IO_STANDARD("SB_LVDS_INPUT"), //"SB_LVCMOS" for output
// SB_IO #( .PIN_TYPE(6'd1)
// .IO_STANDARD("SB_LVDS_INPUT"), //"SB_LVCMOS" for output ) SB_IO (
// .PIN_TYPE(6'd1) .PACKAGE_PIN(eem0_n_1),
// ) SB_IO ( .D_IN_0(eem_ch1)
// .PACKAGE_PIN(eem1_n_2), );
// .D_IN_0(d_in)
// );
assign eem_ch0 = counter[3]; assign eem_ch0 = counter[3];
assign eem_ch1 = counter[3]; // assign eem_ch1 = counter[3];
assign eem_ch2 = counter[3]; assign eem_ch2 = counter[3];
assign eem_ch3 = counter[3]; assign eem_ch3 = counter[3];
assign eem_ch4 = counter[3]; assign eem_ch4 = counter[3];
@ -159,4 +191,7 @@ module top (
assign eem_ch6 = counter[3]; assign eem_ch6 = counter[3];
assign eem_ch7 = counter[3]; assign eem_ch7 = counter[3];
assign LED = eem_ch1;
assign DIO_OUT = counter[24];
endmodule endmodule

View File

@ -1,20 +1,21 @@
OpenDocument="user_main.c", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/Core/Src/User/user_main.c", Line=14 OpenDocument="user_main.c", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/Core/Src/User/user_main.c", Line=0
OpenDocument="fpga.c", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/Core/Src/User/fpga.c", Line=43 OpenDocument="fpga.c", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/Core/Src/User/fpga.c", Line=43
OpenDocument="main.c", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/Core/Src/main.c", Line=63 OpenDocument="main.c", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/Core/Src/main.c", Line=61
OpenDocument="stm32f1xx_hal.c", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c", Line=372 OpenDocument="stm32f1xx_hal.c", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c", Line=372
OpenDocument="stm32f1xx_it.c", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/Core/Src/stm32f1xx_it.c", Line=79 OpenDocument="stm32f1xx_it.c", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/Core/Src/stm32f1xx_it.c", Line=79
OpenDocument="startup_stm32f103xg.s", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/startup_stm32f103xg.s", Line=56 OpenDocument="startup_stm32f103xg.s", FilePath="/home/geekzjk/Desktop/Syrostan-MCU-C/startup_stm32f103xg.s", Line=54
OpenToolbar="Debug", Floating=0, x=0, y=0 OpenToolbar="Debug", Floating=0, x=0, y=0
OpenWindow="Registers 1", DockArea=RIGHT, x=0, y=0, w=300, h=629, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0, FilteredItems=[], RefreshRate=1 OpenWindow="Registers 1", DockArea=RIGHT, x=0, y=0, w=300, h=770, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0, FilteredItems=[], RefreshRate=1
OpenWindow="Source Files", DockArea=LEFT, x=0, y=0, w=484, h=179, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0 OpenWindow="Source Files", DockArea=LEFT, x=0, y=0, w=484, h=217, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0
OpenWindow="Memory 1", DockArea=BOTTOM, x=2, y=0, w=201, h=318, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0, EditorAddress=0xFC OpenWindow="Memory 1", DockArea=BOTTOM, x=2, y=0, w=201, h=177, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0, EditorAddress=0xFC
OpenWindow="Watched Data 1", DockArea=LEFT, x=0, y=2, w=484, h=211, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0 OpenWindow="Watched Data 1", DockArea=LEFT, x=0, y=2, w=484, h=252, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0
OpenWindow="Functions", DockArea=LEFT, x=0, y=1, w=484, h=108, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0 OpenWindow="Functions", DockArea=LEFT, x=0, y=1, w=484, h=137, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0
OpenWindow="Data Sampling", DockArea=BOTTOM, x=0, y=0, w=582, h=318, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0, VisibleTab=0, UniformSampleSpacing=0 OpenWindow="Data Sampling", DockArea=BOTTOM, x=0, y=0, w=582, h=177, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0, VisibleTab=0, UniformSampleSpacing=0
OpenWindow="Timeline", DockArea=BOTTOM, x=1, y=0, w=1135, h=318, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=1, DataPaneShown=1, PowerPaneShown=1, CodePaneShown=1, PinCursor="Cursor Movable", TimePerDiv="50 ms / Div", TimeStampFormat="Time", DataGraphDrawAsPoints=0, DataGraphLegendShown=1, DataGraphUniformSampleSpacing=0, DataGraphLegendPosition="916;0", PowerGraphDrawAsPoints=0, PowerGraphLegendShown=1, PowerGraphAvgFilterTime=Off, PowerGraphAvgFilterLen=Off, PowerGraphUniformSampleSpacing=0, PowerGraphLegendPosition="952;0", CodeGraphLegendShown=1, CodeGraphLegendPosition="968;0" OpenWindow="Timeline", DockArea=BOTTOM, x=1, y=0, w=1135, h=177, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=1, DataPaneShown=1, PowerPaneShown=1, CodePaneShown=1, PinCursor="Cursor Movable", TimePerDiv="50 ms / Div", TimeStampFormat="Time", DataGraphDrawAsPoints=0, DataGraphLegendShown=1, DataGraphUniformSampleSpacing=0, DataGraphLegendPosition="916;0", PowerGraphDrawAsPoints=0, PowerGraphLegendShown=1, PowerGraphAvgFilterTime=Off, PowerGraphAvgFilterLen=Off, PowerGraphUniformSampleSpacing=0, PowerGraphLegendPosition="952;0", CodeGraphLegendShown=1, CodeGraphLegendPosition="968;0"
OpenWindow="Console", DockArea=LEFT, x=0, y=3, w=484, h=128, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0 OpenWindow="Console", DockArea=LEFT, x=0, y=3, w=484, h=161, FilterBarShown=0, TotalValueBarShown=0, ToolBarShown=0
TableHeader="Functions", SortCol="Name", SortOrder="DESCENDING", VisibleCols=["Name";"Address";"Size";"#Insts";"Source"], ColWidths=[1183;100;100;100;203] TableHeader="Functions", SortCol="Name", SortOrder="DESCENDING", VisibleCols=["Name";"Address";"Size";"#Insts";"Source"], ColWidths=[1183;100;100;100;203]
TableHeader="Source Files", SortCol="File", SortOrder="ASCENDING", VisibleCols=["File";"Status";"Size";"#Insts";"Path"], ColWidths=[190;100;100;100;707]
TableHeader="Data Sampling Table", SortCol="Index", SortOrder="ASCENDING", VisibleCols=["Index";"Time"], ColWidths=[100;100] TableHeader="Data Sampling Table", SortCol="Index", SortOrder="ASCENDING", VisibleCols=["Index";"Time"], ColWidths=[100;100]
TableHeader="Data Sampling Setup", SortCol="Expression", SortOrder="ASCENDING", VisibleCols=["Expression";"Type";"Value";"Min";"Max";"Average";"# Changes";"Min. Change";"Max. Change"], ColWidths=[100;100;100;100;100;100;100;100;100] TableHeader="Data Sampling Setup", SortCol="Expression", SortOrder="ASCENDING", VisibleCols=["Expression";"Type";"Value";"Min";"Max";"Average";"# Changes";"Min. Change";"Max. Change"], ColWidths=[100;100;100;100;100;100;100;100;100]
TableHeader="Power Sampling", SortCol="Index", SortOrder="ASCENDING", VisibleCols=["Index";"Time";"Ch 0"], ColWidths=[100;100;100] TableHeader="Power Sampling", SortCol="Index", SortOrder="ASCENDING", VisibleCols=["Index";"Time";"Ch 0"], ColWidths=[100;100;100]
@ -22,7 +23,6 @@ TableHeader="Registers 1", SortCol="Name", SortOrder="ASCENDING", VisibleCols=["
TableHeader="Watched Data 1", SortCol="Expression", SortOrder="ASCENDING", VisibleCols=["Expression";"Value";"Location";"Refresh"], ColWidths=[133;144;100;100] TableHeader="Watched Data 1", SortCol="Expression", SortOrder="ASCENDING", VisibleCols=["Expression";"Value";"Location";"Refresh"], ColWidths=[133;144;100;100]
TableHeader="RegisterSelectionDialog", SortCol="None", SortOrder="ASCENDING", VisibleCols=[], ColWidths=[] TableHeader="RegisterSelectionDialog", SortCol="None", SortOrder="ASCENDING", VisibleCols=[], ColWidths=[]
TableHeader="TargetExceptionDialog", SortCol="Name", SortOrder="ASCENDING", VisibleCols=["Name";"Value";"Address";"Description"], ColWidths=[200;100;100;788] TableHeader="TargetExceptionDialog", SortCol="Name", SortOrder="ASCENDING", VisibleCols=["Name";"Value";"Address";"Description"], ColWidths=[200;100;100;788]
TableHeader="Source Files", SortCol="File", SortOrder="ASCENDING", VisibleCols=["File";"Status";"Size";"#Insts";"Path"], ColWidths=[190;100;100;100;707]
WatchedExpression="spi_test_data", RefreshRate=5, DisplayFormat=DISPLAY_FORMAT_HEX, Window=Watched Data 1 WatchedExpression="spi_test_data", RefreshRate=5, DisplayFormat=DISPLAY_FORMAT_HEX, Window=Watched Data 1
WatchedExpression="enc_mac_address", RefreshRate=5, DisplayFormat=DISPLAY_FORMAT_HEX, Window=Watched Data 1 WatchedExpression="enc_mac_address", RefreshRate=5, DisplayFormat=DISPLAY_FORMAT_HEX, Window=Watched Data 1
WatchedExpression="voltages", RefreshRate=5, Window=Watched Data 1 WatchedExpression="voltages", RefreshRate=5, Window=Watched Data 1