S
simon111
Guest
안녕 전문가 :
난 오전에 새로운 FPGA를
내가 spartan3e를 사용하는 자일링스의 오전 및 인터페이스가 FIFO를 통해 노예 fx2을 노송나무로 데이터를 전송하려는 일부.이세 나와 함께 작업,
내가 회로를 작성 논리, 나는 성공적으로 그것을 합성하지만 성공적으로 그것을 해석하지 못하
다음 코드를 제 :
코드 :/ / ep2 - 나가, wirte 이미지 데이터,
/ / ep6 -에서 읽은 이미지 데이터
모듈 slave_fifo_syn (
sys_clk,
sys_rst_n,
usb_fifo_clk,
usb_slwr,
usb_slrd,
usb_sloe,
usb_fifo,
, usb_ad
usb_flaga,
usb_flagb,
, usb_flagc
, usb_pktend
usb_slcs
);
입력 sys_clk; / / 시스템 CLK
입력 sys_rst_n; / / 시스템 재설정, 낮은 활성
입력 usb_flaga은; / / flaga ep2 빈 플래그, 낮은 활성화됩니다
입력 usb_flagb; / / flagb ep6 전체 플래그, 낮은 활성화됩니다
입력 usb_flagc; / / 사용
출력 usb_fifo_clk을; / / CLK FIFO를 노예
출력 usb_slwr을; / / 슬레이브 FIFO를, 낮은 활성 쓰기
출력 usb_slrd; / / 슬레이브 FIFO를 읽고, 낮은 활성
출력 usb_sloe을; / / 슬레이브 FIFO를 출력, 낮은 활성을 활성화
출력 usb_slcs; / / 슬레이브 칩 FIFO를 선택하고, 낮은 활성
inout은 7시] usb_fifo을 [; / / 슬레이브 FIFO가 데이터 버스, 양방향 방향
출력 1시] usb_ad을 [; / / EP에의 FIFO를 주소 0 - ep2 2 - dp6
출력 usb_pktend; / / 패킷 끝, 낮은 활성/ / 코드는 여기에 시작
/ / DCM로의 USB가 FIFO CLK를 생성
dcm_66_33 dcm_inst (
. CLKIN_IN (sys_clk)
,. RST_IN (! sys_rst_n)
,. CLKFX_OUT (usb_fifo_clk)
,. CLKIN_IBUFG_OUT ()
,. CLK0_OUT ()
,. LOCKED_OUT ()
);
reg [8시] 엑스;
reg [8시]에 y를;
17시] waddr [교체;
와이어 [7시] d 개;
reg [7시]은 DD 형식;
와이어 14시] ramaddr의 [;
usb_slrd reg;
reg [7시]은 [1시 3분]에 cmd를;
와이어 독서;철사 EF; / / empyt 플래그
와이어 FF로, / / 전체 플래그=가 ~ usb_flaga EF를 할당;
= ~ usb_flagb FF로를 할당;
독서 = (cmd를 [1] == 8'h01) 및 지정 ([2] == 8'h02) & (| cmd를 cmd를 [3]); / / 읽기/ / flagb는 ep6은 종점에있는 자동차입니다 ep6 전체 플래그입니다
/ / flaga는 ep6는 자동 아웃 종점입니다 ep2 빈 플래그입니다= ~ usb_slrd | 정보 FF로 usb_slwr을 할당;
usb_fifo을 할당 = usb_flaga? d 개 : 8'bz;
= usb_slrd usb_sloe를 할당;
지정가 = usb_slrd usb_ad? 2'h2 수 : 2'h0;
usb_pktend = 1'h1 할당;
= 1'h0 usb_cs를 할당;
= usb_slrd ramaddr를 할당? (y를 [6시], 엑스 [7시]) : waddr을;항상 @ (posedge usb_fifo_clk 또는 negedge sys_rst_n)
시작
(~ sys_rst_n)하는 경우
시작
엑스 <= # 1 8'h0;
y를 <= # 1 8'h0;
cmd를 [1] <= # 1 8'h00;
cmd를 [2] <= # 1 8'h00;
cmd를 [3] <= # 1 8'h00;
waddr의 <= # 1 15'h00;
끝
다른 사람
시작
DD 형식 <= # 1 d 개;
usb_slrd <= # 1 EF;
(~ usb_slrd)하는 경우
시작
(~ 독서)하는 경우
시작
[3] <= # 1 usb_fifo cmd를;
cmd를 [2가] <= # 1 [3] cmd를;
cmd를 [1]은 <= # 1 [2] cmd를;
끝
다른 사람
시작
waddr의 <= # 1 waddr 15' H01;
cmd를 [3가] <= # 1 cmd를 [3] -8 'H01;
끝
끝
다른면 (~ usb_slwr)
시작
엑스 <= # 1 엑스 8' H01;
(& x)를하는 경우
y를 <= # 1 y를 8' H01;
끝
끝
끝
/ /이 숫양 저장소의 이미지를
/ / /이 이미지를 쓰고 읽을 수 fx2을 노송나무
imgram의 숫양 (
. Addr (ramaddr)
,. CLK (usb_fifo_clk)
,. 딘의 (usb_fifo)
,. dout (d)에
,. 우리 (읽기)
);
endmodule
난 오전에 새로운 FPGA를
내가 spartan3e를 사용하는 자일링스의 오전 및 인터페이스가 FIFO를 통해 노예 fx2을 노송나무로 데이터를 전송하려는 일부.이세 나와 함께 작업,
내가 회로를 작성 논리, 나는 성공적으로 그것을 합성하지만 성공적으로 그것을 해석하지 못하
다음 코드를 제 :
코드 :/ / ep2 - 나가, wirte 이미지 데이터,
/ / ep6 -에서 읽은 이미지 데이터
모듈 slave_fifo_syn (
sys_clk,
sys_rst_n,
usb_fifo_clk,
usb_slwr,
usb_slrd,
usb_sloe,
usb_fifo,
, usb_ad
usb_flaga,
usb_flagb,
, usb_flagc
, usb_pktend
usb_slcs
);
입력 sys_clk; / / 시스템 CLK
입력 sys_rst_n; / / 시스템 재설정, 낮은 활성
입력 usb_flaga은; / / flaga ep2 빈 플래그, 낮은 활성화됩니다
입력 usb_flagb; / / flagb ep6 전체 플래그, 낮은 활성화됩니다
입력 usb_flagc; / / 사용
출력 usb_fifo_clk을; / / CLK FIFO를 노예
출력 usb_slwr을; / / 슬레이브 FIFO를, 낮은 활성 쓰기
출력 usb_slrd; / / 슬레이브 FIFO를 읽고, 낮은 활성
출력 usb_sloe을; / / 슬레이브 FIFO를 출력, 낮은 활성을 활성화
출력 usb_slcs; / / 슬레이브 칩 FIFO를 선택하고, 낮은 활성
inout은 7시] usb_fifo을 [; / / 슬레이브 FIFO가 데이터 버스, 양방향 방향
출력 1시] usb_ad을 [; / / EP에의 FIFO를 주소 0 - ep2 2 - dp6
출력 usb_pktend; / / 패킷 끝, 낮은 활성/ / 코드는 여기에 시작
/ / DCM로의 USB가 FIFO CLK를 생성
dcm_66_33 dcm_inst (
. CLKIN_IN (sys_clk)
,. RST_IN (! sys_rst_n)
,. CLKFX_OUT (usb_fifo_clk)
,. CLKIN_IBUFG_OUT ()
,. CLK0_OUT ()
,. LOCKED_OUT ()
);
reg [8시] 엑스;
reg [8시]에 y를;
17시] waddr [교체;
와이어 [7시] d 개;
reg [7시]은 DD 형식;
와이어 14시] ramaddr의 [;
usb_slrd reg;
reg [7시]은 [1시 3분]에 cmd를;
와이어 독서;철사 EF; / / empyt 플래그
와이어 FF로, / / 전체 플래그=가 ~ usb_flaga EF를 할당;
= ~ usb_flagb FF로를 할당;
독서 = (cmd를 [1] == 8'h01) 및 지정 ([2] == 8'h02) & (| cmd를 cmd를 [3]); / / 읽기/ / flagb는 ep6은 종점에있는 자동차입니다 ep6 전체 플래그입니다
/ / flaga는 ep6는 자동 아웃 종점입니다 ep2 빈 플래그입니다= ~ usb_slrd | 정보 FF로 usb_slwr을 할당;
usb_fifo을 할당 = usb_flaga? d 개 : 8'bz;
= usb_slrd usb_sloe를 할당;
지정가 = usb_slrd usb_ad? 2'h2 수 : 2'h0;
usb_pktend = 1'h1 할당;
= 1'h0 usb_cs를 할당;
= usb_slrd ramaddr를 할당? (y를 [6시], 엑스 [7시]) : waddr을;항상 @ (posedge usb_fifo_clk 또는 negedge sys_rst_n)
시작
(~ sys_rst_n)하는 경우
시작
엑스 <= # 1 8'h0;
y를 <= # 1 8'h0;
cmd를 [1] <= # 1 8'h00;
cmd를 [2] <= # 1 8'h00;
cmd를 [3] <= # 1 8'h00;
waddr의 <= # 1 15'h00;
끝
다른 사람
시작
DD 형식 <= # 1 d 개;
usb_slrd <= # 1 EF;
(~ usb_slrd)하는 경우
시작
(~ 독서)하는 경우
시작
[3] <= # 1 usb_fifo cmd를;
cmd를 [2가] <= # 1 [3] cmd를;
cmd를 [1]은 <= # 1 [2] cmd를;
끝
다른 사람
시작
waddr의 <= # 1 waddr 15' H01;
cmd를 [3가] <= # 1 cmd를 [3] -8 'H01;
끝
끝
다른면 (~ usb_slwr)
시작
엑스 <= # 1 엑스 8' H01;
(& x)를하는 경우
y를 <= # 1 y를 8' H01;
끝
끝
끝
/ /이 숫양 저장소의 이미지를
/ / /이 이미지를 쓰고 읽을 수 fx2을 노송나무
imgram의 숫양 (
. Addr (ramaddr)
,. CLK (usb_fifo_clk)
,. 딘의 (usb_fifo)
,. dout (d)에
,. 우리 (읽기)
);
endmodule