프로젝트를 마무리하고 있으며 프로세서 내부의 기능 유닛간에 양방향 핸드 쉐이킹이 필요합니다. 나는 그것이 무엇인지는 알지만 어떤 '표준'이나 좋은 간단한 예가 있는가?Verilog 양방향 핸드 셰이 킹 예
두 유닛간에 데이터 라인이 있고 X가 Y로 보낼 때 별도의 '보낸'신호가 주어집니다. Y가 '수신'신호를 받으면 다른 와이어의 X로 신호가 전송됩니다. X가 수신 된 신호를 읽으면 데이터 라인에서 데이터 전송을 중지하고 전송 된 와이어를 0 또는 Z로 설정합니다. Y는 수신 된 신호를 0 또는 Z로 설정합니다.
이것은 모두 동기식입니다 (동일한 시계에서).
이 문제를 해결하는 올바른 방법입니까? 나는 그것이 대규모로 매우 난잡해질 수 있다는 것을 알았지 만, 나는 단순한 누산기 기반의 프로세서에 대해서만 연구하고있다.
잘 작동하는지 잘 모르겠습니다. T-state를 기반으로 컨트롤러가 신호를 보내서 데이터 버스에서 단위를 읽거나 데이터 버스에 쓴다. 기능 단위 자체는 데이터의 출처 또는 이동 여부를 알지 못한다. 내가 너의 대답을 오해하지 않는다면. – zKarp
당신이 뭘 찾고 있는지 잘 모르겠습니다. 좀 더 명확하게 질문을 편집 할 수 있습니까? Z가 Z라는 또 다른 구성 요소이거나 높은 임피던스라고 할 때? – Russell