자일링스 -EDK (하드웨어 설정의 EDK에있는 하드웨어 디자인)에 의해 생성 된 uart에 포트를 추가하려고하는데, MHS 파일을 변경하여 포트를 추가 할 수 있음을 알고 있습니다. 하지만 내가 MHS 파일을 변경할 때마다 MPD 파일에 없기 때문에 포트를 추가 할 수 없다는 오류가 표시되며 프로젝트는 자일링스 EDK로 닫힙니다.자일링스 EDK에서 MHS 파일 변경하기 14.4 uart peripharal에 포트 추가하기
내 설정 : xc6slx9 2 csg324 fpga가 있습니다. 나는 3 개의 포트 RX, TX, SW를 가지고있는 rs232 uart를 가지고있다. 그러나 자일링스 EDk에 의해 만들어진 기본 디자인은 TX 포트와 RX 포트를 가지고 있기 때문에 SW 포트를 추가해야한다. 나는 MHS 파일을 쓰고있다. 내 질문의
# ##############################################################################
# Created by Base System Builder Wizard for Xilinx EDK 14.4 Build EDK_P.49d
# Mon Mar 03 09:02:22 2014
# Target Board: Custom
# Family: spartan6
# Device: xc6slx9
# Package: csg324
# Speed Grade: -2
# ##############################################################################
PARAMETER VERSION = 2.1.0
PORT RS232_Uart_1_sout = RS232_Uart_1_sout, DIR = O
PORT RS232_Uart_1_sin = RS232_Uart_1_sin, DIR = I
PORT RESET = RESET, DIR = I, SIGIS = RST, RST_POLARITY = 1
# PORT CLK_P = CLK, DIR = I, DIFFERENTIAL_POLARITY = P, SIGIS = CLK, CLK_FREQ = 100000000
# PORT CLK_N = CLK, DIR = I, DIFFERENTIAL_POLARITY = N, SIGIS = CLK, CLK_FREQ = 100000000
PORT CLK = CLK, DIR = I, SIGIS = CLK, CLK_FREQ = 27000000
PORT TX_enable = TX_enable, DIR = O # I am trying to add this port
BEGIN proc_sys_reset
PARAMETER INSTANCE = proc_sys_reset_0
PARAMETER HW_VER = 3.00.a
PARAMETER C_EXT_RESET_HIGH = 1
PORT MB_Debug_Sys_Rst = proc_sys_reset_0_MB_Debug_Sys_Rst
PORT Dcm_locked = proc_sys_reset_0_Dcm_locked
PORT MB_Reset = proc_sys_reset_0_MB_Reset
PORT Slowest_sync_clk = clk_100_0000MHz
PORT Interconnect_aresetn = proc_sys_reset_0_Interconnect_aresetn
PORT Ext_Reset_In = RESET
PORT BUS_STRUCT_RESET = proc_sys_reset_0_BUS_STRUCT_RESET
END
BEGIN lmb_v10
PARAMETER INSTANCE = microblaze_0_ilmb
PARAMETER HW_VER = 2.00.b
PORT SYS_RST = proc_sys_reset_0_BUS_STRUCT_RESET
PORT LMB_CLK = clk_100_0000MHz
END
BEGIN lmb_bram_if_cntlr
PARAMETER INSTANCE = microblaze_0_i_bram_ctrl
PARAMETER HW_VER = 3.10.c
PARAMETER C_BASEADDR = 0x00000000
PARAMETER C_HIGHADDR = 0x00003fff
BUS_INTERFACE SLMB = microblaze_0_ilmb
BUS_INTERFACE BRAM_PORT = microblaze_0_i_bram_ctrl_2_microblaze_0_bram_block
END
BEGIN lmb_v10
PARAMETER INSTANCE = microblaze_0_dlmb
PARAMETER HW_VER = 2.00.b
PORT SYS_RST = proc_sys_reset_0_BUS_STRUCT_RESET
PORT LMB_CLK = clk_100_0000MHz
END
BEGIN lmb_bram_if_cntlr
PARAMETER INSTANCE = microblaze_0_d_bram_ctrl
PARAMETER HW_VER = 3.10.c
PARAMETER C_BASEADDR = 0x00000000
PARAMETER C_HIGHADDR = 0x00003fff
BUS_INTERFACE SLMB = microblaze_0_dlmb
BUS_INTERFACE BRAM_PORT = microblaze_0_d_bram_ctrl_2_microblaze_0_bram_block
END
BEGIN bram_block
PARAMETER INSTANCE = microblaze_0_bram_block
PARAMETER HW_VER = 1.00.a
BUS_INTERFACE PORTA = microblaze_0_i_bram_ctrl_2_microblaze_0_bram_block
BUS_INTERFACE PORTB = microblaze_0_d_bram_ctrl_2_microblaze_0_bram_block
END
BEGIN microblaze
PARAMETER INSTANCE = microblaze_0
PARAMETER HW_VER = 8.40.b
PARAMETER C_INTERCONNECT = 2
PARAMETER C_USE_BARREL = 1
PARAMETER C_USE_FPU = 0
PARAMETER C_DEBUG_ENABLED = 1
PARAMETER C_ICACHE_BASEADDR = 0X00000000
PARAMETER C_ICACHE_HIGHADDR = 0X3FFFFFFF
PARAMETER C_USE_ICACHE = 0
PARAMETER C_ICACHE_ALWAYS_USED = 0
PARAMETER C_DCACHE_BASEADDR = 0X00000000
PARAMETER C_DCACHE_HIGHADDR = 0X3FFFFFFF
PARAMETER C_USE_DCACHE = 0
PARAMETER C_DCACHE_ALWAYS_USED = 0
BUS_INTERFACE ILMB = microblaze_0_ilmb
BUS_INTERFACE DLMB = microblaze_0_dlmb
BUS_INTERFACE M_AXI_DP = axi4lite_0
BUS_INTERFACE DEBUG = microblaze_0_debug
PORT MB_RESET = proc_sys_reset_0_MB_Reset
PORT CLK = clk_100_0000MHz
END
BEGIN mdm
PARAMETER INSTANCE = debug_module
PARAMETER HW_VER = 2.10.a
PARAMETER C_INTERCONNECT = 2
PARAMETER C_USE_UART = 1
PARAMETER C_BASEADDR = 0x41400000
PARAMETER C_HIGHADDR = 0x4140ffff
BUS_INTERFACE S_AXI = axi4lite_0
BUS_INTERFACE MBDEBUG_0 = microblaze_0_debug
PORT Debug_SYS_Rst = proc_sys_reset_0_MB_Debug_Sys_Rst
PORT S_AXI_ACLK = clk_100_0000MHz
END
BEGIN clock_generator
PARAMETER INSTANCE = clock_generator_0
PARAMETER HW_VER = 4.03.a
PARAMETER C_CLKIN_FREQ = 27000000
PARAMETER C_CLKOUT0_FREQ = 1687500
PARAMETER C_CLKOUT0_GROUP = NONE
PORT LOCKED = proc_sys_reset_0_Dcm_locked
PORT CLKOUT0 = clk_100_0000MHz
PORT RST = RESET
PORT CLKIN = CLK
END
BEGIN axi_interconnect
PARAMETER INSTANCE = axi4lite_0
PARAMETER HW_VER = 1.06.a
PARAMETER C_INTERCONNECT_CONNECTIVITY_MODE = 0
PORT interconnect_aclk = clk_100_0000MHz
PORT INTERCONNECT_ARESETN = proc_sys_reset_0_Interconnect_aresetn
END
BEGIN axi_uartlite
PARAMETER INSTANCE = RS232
PARAMETER HW_VER = 1.02.a
PARAMETER C_BAUDRATE = 9600
PARAMETER C_DATA_BITS = 8
PARAMETER C_USE_PARITY = 0
PARAMETER C_ODD_PARITY = 1
PARAMETER C_BASEADDR = 0x40600000
PARAMETER C_HIGHADDR = 0x4060ffff
BUS_INTERFACE S_AXI = axi4lite_0
PORT S_AXI_ACLK = clk_100_0000MHz
PORT TX = RS232_Uart_1_sout
PORT RX = RS232_Uart_1_sin
PORT TX_enable = RS232_TX_enable # I am trying to add this port
END
/////////////// 답변 /////////////////
그것은에 쉽게 ipcore에 연결되지 않은 포트를 추가하십시오. 그냥 라인을 사용하십시오 MHS 파일 (예 : axi_uartlite
등) pcore에 포트를 추가 할
PORT TX_enable = net_vcc, DIR = O
MHS 파일을 손으로 편집하는 이유는 무엇입니까? 물론 가능하지만 문서가 어떻게 작동하는지 읽어야 만합니다. EDK 도구를 사용하여 추가 포트를 추가하면됩니다. –