목차
① Execution Combination Top의 시뮬레이션 결과
① Execution Combination Top의 구현
① Execution Combination Top의 구현
본문내용
를 재배치해주는 모듈로, 단순히 16to1 MUX를 4번 사용하면 되는 간단한 모듈이다. 참고 자료의 데이터 순서에 따라 input을 입력해주면 된다.
다음은 수정된 Branch Handler(이하 BH)의 코딩 소스이다.
주석에 나타내었듯이 flags의 최상위 bit는 zero, 중간 bit는 sign, 최하위 bit는 overflow이다.
zero=1, sign=1일 때는 don't care로, overflow 값에 관계없이 고려할 필요가 없다.
각 flags 값에 따른 연산을 K-Map으로 표현한 다음, 이를 Boolean 대수식으로 표현하였고, 이를 게이트레벨 형식으로 직접 구현하였다. 구현 후 테스트벤치 파일로 확인 및 코드의 직접적인 재검증을 통해, 올바르게 모듈이 구현되었음을 누차 확인하였다.
모든 모듈을 각각 테스트벤치 파일로 테스트하고, 코딩 소스를 직접 확인하였을 때는 문제가 전혀 없었다. 그러나 ECT를 구성하여 매뉴얼대로 시뮬레이션시 오류가 발생하였으며, 어떠한 방법으로도 이러한 오류를 해결할 수 없었다. 실험 시간에 다루었던 범위의 내용과 실력으로는 수정하기 어려운 내용이리라는 것을 추측하는 것만이 가능할 뿐, 수정이 불가능했다.
다음은 수정된 Branch Handler(이하 BH)의 코딩 소스이다.
주석에 나타내었듯이 flags의 최상위 bit는 zero, 중간 bit는 sign, 최하위 bit는 overflow이다.
zero=1, sign=1일 때는 don't care로, overflow 값에 관계없이 고려할 필요가 없다.
각 flags 값에 따른 연산을 K-Map으로 표현한 다음, 이를 Boolean 대수식으로 표현하였고, 이를 게이트레벨 형식으로 직접 구현하였다. 구현 후 테스트벤치 파일로 확인 및 코드의 직접적인 재검증을 통해, 올바르게 모듈이 구현되었음을 누차 확인하였다.
모든 모듈을 각각 테스트벤치 파일로 테스트하고, 코딩 소스를 직접 확인하였을 때는 문제가 전혀 없었다. 그러나 ECT를 구성하여 매뉴얼대로 시뮬레이션시 오류가 발생하였으며, 어떠한 방법으로도 이러한 오류를 해결할 수 없었다. 실험 시간에 다루었던 범위의 내용과 실력으로는 수정하기 어려운 내용이리라는 것을 추측하는 것만이 가능할 뿐, 수정이 불가능했다.
키워드
추천자료
[디지털시스템]PICO Processor - Address Generator, Branch Handler, PC Calculation Unit을...
[디지털시스템]PICO Processor - Address Generator, PC Calculation Unit, Branch Handler ...
[디지털시스템]PICO Processor - ALU Decoder 결과보고서
[디지털시스템(Verilog)] Memory Controller 결과보고서
[디지털시스템(Verilog)] Address Generator, PC Calculation Unit, Branch Handler 예비보고서
[디지털시스템(Verilog)] ALU Decoder 예비보고서
[디지털시스템(Verilog)] Data Mapping Unit, Execution Combination Top 예비보고서
[디지털시스템(Verilog)] Memory Controller 예비보고서
[디지털시스템(Verilog)] Memory Top & Writeback 예비보고서
소개글