2020 · 13 citations · 23 references
EngineeringComputer EngineeringComputer ScienceComputer ArchitectureHardware-software Co-designSchedulingData-flow AnalysisMemory Hierarchy DesignMemory Hierarchy OptimizationMemory Subsystem DesignPipeline ParallelismCommandsHardware PipeliningMemory Controller DesignOff-chip Memory SystemsPipeline SchedulingPipelined MemoryPipeliningWorst-case Bounds
Worst-case execution bounds for real-time programs are profoundly impacted by the latency of accessing hardware shared resources, such as off-chip DRAM. While many different memory controller designs have been proposed in the literature, there is a trade-off between average-case performance and predictable worst-case bounds, as techniques targeted at improving the former can harm the latter and vice-versa. We find that taking advantage of pipelining between different commands can improve both, but incorporating pipelining effects in worst-case analysis is challenging. In this work, we introduce a novel DRAM controller that successfully balances performance and predictability by employing a dynamic pipelining scheme. We show that the schedule of DRAM commands is akin to a two-stage two-mode pipeline, and hence, design an easily-implementable admission rule that allows us to dynamically add requests to the pipeline without hurting worst-case bounds.
23
A Benchmark Characterization of the EEMBC Benchmark Suite
Jason Poovey, Thomas M. Conte, Markus Levy et al. · IEEE Micro · 2009 · 218 citations
Bounding memory interference delay in COTS-based multi-core systems
Hyoseung Kim, Dionisio de Niz, Björn Andersson et al. · 2014 · 209 citations · Full text
Jan Reineke, Isaac Liu, Hiren Patel et al. · 2011 · 171 citations