As interconnection networks proliferate a broad range of high-performance systems, network delay has been a signicant bottleneck in these systems. Using Spin-Transfer Torque RAM(STT-RAM) in input buffers help to alleviate the bottleneck because of its nature of high density. Furthermore, STT-RAM has zero leakage power consumption from memory cell, considerably eliminating standby leakage power. However, deploying STT-RAM is challenging because it has high write latency and write energy consumption.
We propose a novel input buffer design of a router in interconnection networks using both SRAM and STT-RAM. In particular, we partition STT-RAM into multiple bank to hide the long write latency. And, we lower the retention time of STT-RAM to reduce its long write latency and its high write energy.
Considering that reducing retention time leads to the correctness issues, we present a low-cost ECC-based solution, which adds ECC for old its and shares ECC among different flits. Evaluation shows that the proposed architecture enhances the throughput by 46 % on average, and achieves energy reduction of 30 %.
인터커넥션 네트워크가 고성능 시스템에 광범위하게 사용됨에 따라, 네트워크 지연은 시스템의 병목현상이 되었습니다. 스핀주입 자화 반전 메모리를 이용하여 버퍼을 디자인하면 높은 밀도 때문에 병목현상을 완화할 수 있습니다. 또한, 메모리 셀 당 누설 파워가 작기 때문에 누설 에너지를 줄일 수 있습니다. 그러나, 스핀주입 자화 반전 메모리를 이용하면 높은 쓰기 지연 시간과 쓰기 에너지가 필요합니다.
따라서, 정적 메모리와 스핀주입 자화반전 메모리를 같이 사용하여 버퍼을 디자인하는 방법을 제안합니다. 높은 쓰기 지연시간을 감추기 위해 여러개의 뱅크로 나눈 스핀주입 자화반전 메모리를 사용합니다. 그리고 쓰기 에너지를 줄이기 위해 스핀주입 자화 반전 메모리의 보유시간을 감소시킵니다. 하지만, 스핀주입 자화반전 메모리의 보유시간을 줄임에 따라 메모리에 오류가 발생하는 것을 막기위해서 오류 정정코드를 추가해야합니다. 오류 정정 코드를 사용했을 때 에너지 부담을 줄이기 위해, 버퍼에 일정시간 이상 머문 플릿에 대해서만 오류 정정코드를 추카하는 방법을 제안합니다. 그리고, 메모리 면적 부담을 줄이기 위해, 버퍼에 저장된 플릿들이 오류 정정 코드를 공유하는 방법을 제안합니다. 실험 결과, 제안된 방법을 사용하면 성능이 46% 상승하고 에너지는 30% 감소합니다.