설계"난

G

Guest

Guest
안녕하세요 모든 몸 ...내가 코드 데이터를 수신 RS232 쓴 SRAM을에 저장 ...및 작업<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="미소" border="0" />하지만 나는 문제가 생겼다 ...나는 16 진수, 데이터와 20 동등 "공간", ... 난 저장하지 못해 실패하지만 난 내 코드를 수정하려고PLZ ...도와주세요<img src="http://www.edaboard.com/images/smiles/icon_sad.gif" alt="슬픈" border="0" />이건 내 코드 :# # # # MEM_SRAM #####################################

모듈 MEM_SRAM (
Data_Bus, / / 데이터 버스
주소, / / 메모리 주소
, / / RAM의 읽기 활성화 NRD
NWR, / / RAM에 쓰기 사용
후부 터, / / 메모리 칩 사용
덩어리, / / RAM의 상위 바이트
NLB를, / / RAM이 낮은 바이트
Data_In,
Address_In,
RxD_endofpacket,
LEDR,
CLK); / / 활성화 쓰기

출력 reg [17시] 주소; / / RAM이 신호 / / 포함
inout [7시] Data_Bus;
출력 NRD, NWR;
출력 덩어리, NLB를;
출력 후부 터;
우린 [1시 reg; / / 활성화 쓰기
입력 [17시] Address_In;
입력 [7시] Data_In;
입력 RxD_endofpacket;
출력 [17시] LEDR; / / reg 포함
입력 CLK;
덩어리 = 1'b1; / / 비활성화 어퍼 바이트 할당
NLB를 = 1'b0; / / 낮은 바이트 할당 활성화
= 1'b0 후부 터 할당; / / 칩 사용
NRD = 1'b0 할당; / / 읽기 활성화
NWR =! 우리; / / 활성화를 할당 쓰기Data_Bus = 우리가 할당?Data_In : 8'hzz;

항상 (posedge RxD_endofpacket) @
만약 (RxD_endofpacket == 1)
시작
만약 (Data_In == "00100000")
우리 = 1'b0;
그 밖의
우리 = 1'b1;

주소 "= 주소 1;


LEDR = 주소를 할당;

###################################
이것은 모듈 수신기 모듈과 SRAM에 모듈을 결합하여############################ ########

모듈 serialfun (CLK, RxD, RxD_data, NWR, 후부 터,
, 주소, Data_Bus, LED가 Data_In, 덩어리, NLB를, RxD_endofpacket, RxD_data_ready, RxD_idle) NRD;
입력 CLK;
입력 RxD;
출력 RxD_idle;
출력 RxD_endofpacket;
출력 RxD_data_ready;
출력 NRD;
출력 NWR, 후부 터;
우린 [1시 reg;
출력 [17시] 주소;
inout [7시] Data_Bus;
출력 [17시] LED가;
출력 덩어리, NLB를;

////////////////////////////////////////////////// /
/ / 와이어 RxD_data_ready;
출력 [7시] RxD_data;
async_receiver 디시 리얼 라이저 (. CLK (CLK). RxD (RxD). RxD_data (RxD_data). RxD_endofpacket (RxD_endofpacket). RxD_idle (RxD_idle). RxD_data_ready (RxD_data_ready));
////////////////////////////////////////////////// /

////////////////////////////////////////////////// /////////
입력 [7시] Data_In;
] Address_In [17시 reg;

MEM_SRAM u0 (. Data_Bus (Data_Bus). (주소), 주소. NRD (NRD). 덩어리 (덩어리). NLB를 (NLB를)
. NWR (NWR). 후부 터 (후부 터). Address_In (Address_In). Data_In (RxD_data). LEDR (LED)이,. RxD_endofpacket (RxD_endofpacket));endmodule

 
incremented when RxD_endofpacket==1.

귀하의 코드에서, 주소는 항상
증가 RxD_endofpacket 때 == 1.

이렇게 뭔가를 좀해야합니다 :

코드 :만약 (Data_In == '물)

우리가 "= 1'b0;

다른 시작

우리가 "= 1'b1;

주소 "= 주소 1;



 
당신 devnull 감사합니다

난 내 코드를 .. 바꿨어

로 입력하고 확인해 볼 것입니다 우리는 (쓰기 가능) MEM 코드를 입력하면됩니다 만약 데이터를 "공간"아니면 저쪽에있는 다른 데이터를 입력한 다음 아니면하지 메모리에 쓸 우리가 로그인합니다.

그리고 MEM 코드가 난 것입니다 그냥 증분 주소입니다.

당신은 내 논리는 영장이나 아니라고 생각합니까???모듈 수신기 모듈 및 SRAM과 모듈을 결합한 :
###############################################

모듈 serialfun (CLK, RxD, RxD_data, NWR, 후부 터,, 주소, Data_Bus, LED가 Data_In, 덩어리, NLB를, RxD_endofpacket, RxD_data_ready, RxD_idle, 우리) NRD;입력 CLK;입력 RxD;출력 RxD_idle;출력 RxD_endofpacket;출력 RxD_data_ready;출력 NRD;출력 NWR, 후부 터;출력 reg 우리;출력 [17시] 주소;inout [7시] Data_Bus;출력 [17시] LED가;출력 덩어리, NLB를;
////////////////////////////////////////////////// // / 와이어 RxD_data_ready;출력 [7시] RxD_data;async_receiver 디시 리얼 라이저 (. CLK (CLK). RxD (RxD). RxD_data (RxD_data). RxD_endofpacket (RxD_endofpacket). RxD_idle (RxD_idle). RxD_data_ready (RxD_data_ready));

////////////////////////////////////////////////// /항상 (posedge RxD_endofpacket) @만약 (RxD_endofpacket == 1)시작만약 (RxD_data == 8'b00100000)우리 = 1'b0;그 밖의우리 = 1'b1;끝////////////////////////////////////////////////// /////////Data_Bus = 우리가 할당?RxD_data : 8'hzz;////////////////////////////////////////////////// /////////입력 [7시] Data_In;
] Address_In [17시 reg;

MEM_SRAM u0 (. Data_Bus (Data_Bus). (주소), 주소. NRD (NRD). 덩어리 (덩어리). NLB를 (NLB를)
. NWR (NWR). 후부 터 (후부 터). Address_In (Address_In). Data_In (RxD_data). LEDR (LED)이,. RxD_endofpacket (RxD_endofpacket). 우리는 (우리가));endmodule [/ 색상]

################################################## #

SRAM은 코드 :################################################## # # #모듈 MEM_SRAM (Data_Bus, / / 데이터 버스주소, / / 메모리 주소, / / RAM의 읽기 활성화 NRDNWR, / / RAM에 쓰기 사용후부 터, / / 메모리 칩 사용덩어리, / / RAM의 상위 바이트NLB를, / / RAM이 낮은 바이트Data_In,Address_In,RxD_endofpacket,LEDR,우리,CLK); / / 활성화 쓰기출력 reg [17시] 주소; / / RAM이 신호 / / 포함inout [7시] Data_Bus;출력 NRD, NWR;출력 덩어리, NLB를;출력 후부 터;입력 우리; / / 활성화 쓰기입력 [17시] Address_In;입력 [7시] Data_In;입력 RxD_endofpacket;출력 [17시] LEDR; / / reg 포함입력 CLK;덩어리 = 1'b1; / / 비활성화 어퍼 바이트 할당NLB를 = 1'b0; / / 낮은 바이트 할당 활성화= 1'b0 후부 터 할당; / / 칩 사용NRD = 1'b0 할당; / / 읽기 활성화NWR =! 우리; / / 활성화를 할당 쓰기

항상 (posedge RxD_endofpacket) @만약 (RxD_endofpacket == 1)시작(우리 == 1)주소 "= 주소 1;그 밖의주소 "= 주소 0;끝
LEDR = 주소를 할당;########################################### 3
 
귀하의 코드를 기재하거나 작동하지 않는가 시뮬레이션 및 파형을 보면 결정하는 가장 좋은 방법.

 
난 내 코드를 잘못 알고 래요??: /

때 (예를 들어)에 대한 "" "1 다음 2 다음"공간 "다음 3 다음 4처럼 데이터 전송

데이터를 이런식으로 SRAM을 "" ""1 년 후 2 다음 "공간"다음 4 저장

내가 왜 "공간을 절약하기 알아요"해달라고 3 >>???? 생략

이건 내 모든 프로젝트입니다 :

###########################################모듈 serialfun (CLK, RxD, RxD_data, NWR, 후부 터,, 주소, Data_Bus, LED가 Data_In, 덩어리, NLB를, RxD_endofpacket, RxD_data_ready, RxD_idle, 우리) NRD;입력 CLK;입력 RxD;출력 RxD_idle;출력 RxD_endofpacket;출력 RxD_data_ready;출력 NRD;출력 NWR, 후부 터;출력 reg 우리;출력 [17시] 주소;inout [7시] Data_Bus;출력 [17시] LED가;출력 덩어리, NLB를;

////////////////////////////////////////////////// // / 와이어 RxD_data_ready;출력 [7시] RxD_data;async_receiver 디시 리얼 라이저 (. CLK (CLK). RxD (RxD). RxD_data (RxD_data). RxD_endofpacket (RxD_endofpacket). RxD_idle (RxD_idle). RxD_data_ready (RxD_data_ready));
////////////////////////////////////////////////// /
항상 (posedge RxD_endofpacket) @만약 (RxD_endofpacket == 1)시작만약 (RxD_data == 8'b00100000)우리 = 1'b0;

그 밖의우리 = 1'b1;
끝////////////////////////////////////////////////// /////////
/ / Data_Bus = 우리가 할당?
RxD_data : 8'hzz;입력 [7시] Data_In;] Address_In [17시 reg;
////////////////////////////////////////////////// /////////MEM_SRAM u0 (. Data_Bus (Data_Bus). (주소), 주소. NRD (NRD). 덩어리 (덩어리). NLB를 (NLB를). NWR (NWR). 후부 터 (후부 터). Address_In (Address_In). Data_In (RxD_data). LEDR (LED)이,. RxD_endofpacket (RxD_endofpacket). 우리는 (우리가));

endmodule

##############################################
모듈 MEM_SRAM (Data_Bus, / / 데이터 버스주소, / / 메모리 주소, / / RAM의 읽기 활성화 NRDNWR, / / RAM에 쓰기 사용후부 터, / / 메모리 칩 사용덩어리, / / RAM의 상위 바이트NLB를, / / RAM이 낮은 바이트Data_In,Address_In,RxD_endofpacket,LEDR,우리,CLK); / / 활성화 쓰기
출력 reg [17시] 주소; / / RAM이 신호 / / 포함inout [7시] Data_Bus;출력 NRD, NWR;출력 덩어리, NLB를;출력 후부 터;입력 우리; / / 활성화 쓰기입력 [17시] Address_In;입력 [7시] Data_In;입력 RxD_endofpacket;출력 [17시] LEDR; / / reg 포함입력 CLK;덩어리 = 1'b1; / / 비활성화 어퍼 바이트 할당NLB를 = 1'b0; / / 낮은 바이트 할당 활성화= 1'b0 후부 터 할당; / / 칩 사용NRD = 1'b0 할당; / / 읽기 활성화NWR =! 우리; / / 활성화를 할당 쓰기

Data_Bus = 우리가 할당?
Data_In : 8'hzz;
항상 (posedge RxD_endofpacket) @만약 (RxD_endofpacket == 1)시작(우리 == 1)주소 "= 주소 1;
/ / 다른 사람/ / 주소 "= 주소 0;끝
LEDR = 주소를 할당;

endmodule
 

Welcome to EDABoard.com

Sponsor

Back
Top