SRAM Memory Split 구조에서 Read Data Mux 설계
Memory Split 구조에서 Read Data Mux 설계 🔧 SoC Memory Design Memory Split 구조에서 Read Data Mux 설계 Timing Mismatch 해결과 Combinational Mux 설계 전략 🎯 하나의 큰 메모리를 여러 개의 작은 메모리로 분할하여 사용하는 Memory Split 구조는 현대 SoC 설계에서 필수적인 기법입니다. 상위 주소 비트로 메모리 뱅크를 선택하고 출력 데이터를 Mux로 합치는 이 구조에서, 올바른 타이밍 설계가 왜 중요한지 살펴보겠습니다. 📐 구조 개요 대용량 메모리를 단일 블록으로 구현하면 word line과 bit line이 길어져 액세스 타임이 증가하고, 전력 소비도 커집니다. 이런 문제를 해결하기 위해 메모리를 여러 개의 작은 뱅크로 분할하는 Memory Banking 기법을 사용합니다. 예를 들어 32KB 메모리를 4개의 8KB 뱅크로 나누면, 각 뱅크의 word line 길이가 짧아져 속도가 향상되고 전력 효율도 개선됩니다. 이 구조에서 주소의 상위 2비트(예: addr[14:13])는 4개 뱅크 중 하나를 선택하는 mem_sel 신호로 사용되고, 나머지 하위 비트(addr[12:0])는 선택된 뱅크 내부의 실제 주소로 사용됩니다. 각 뱅크에서 나온 출력 데이터(rdata_0 ~ rdata_3)는 최종적으로 Mux를 통해 하나로 합쳐져 wrapper의 출력이 됩니다. 📊 Memory Split Architecture with Delayed Selector addr[14:13] → mem_sel (Bank Selection) ...