Abstract
We propose a novel approach to schedule memory requests in Mixed Criticality Systems (MCS). This approach supports an arbitrary number of criticality levels by enabling the MCS designer to specify memory requirements per task. It retains locality within large-size requests to satisfy memory requirements of all tasks. To achieve this target, we introduce a compact time-division-multiplexing scheduler, and a framework that constructs optimal schedules to manage requests to off-chip memory. We also present a static analysis that guarantees meeting requirements of all tasks. We compare the proposed controller against state-of-the-art memory controllers using both a case study and synthetic experiments.
- Luca Abeni and Giorgio Buttazzo. 2004. Resource reservation in dynamic real-time systems. Real-Time Systems 27, 2 (2004), 123--167. Google Scholar
Digital Library
- Benny Akesson and Kees Goossens. 2011a. Architectures and modeling of predictable memory controllers for improved system integration. In IEEE Conference on Design, Automation and Test in Europe (DATE’11). Google Scholar
Cross Ref
- Benny Akesson and Kees Goossens. 2011b. Memory Controllers for Real-Time Embedded Systems. Springer.Google Scholar
Digital Library
- Benny Akesson, Kees Goossens, and Markus Ringhofer. 2007. Predator: A predictable SDRAM memory controller. In IEEE/ACM International Conference on Hardware/Software Codesign and System Synthesis (CODES+ ISSS’07). Google Scholar
Digital Library
- Pierre Bonami, Mustafa Kilinç, and Jeff Linderoth. 2012. Algorithms and software for convex mixed integer nonlinear programs. In Mixed Integer Nonlinear Programming. Springer. Google Scholar
Cross Ref
- Giorgio Buttazzo, Enrico Bini, and Yifan Wu. 2011. Partitioning real-time applications over multicore reservations. IEEE Transactions on Industrial Informatics 7, 2 (2011), 302--315. Google Scholar
Cross Ref
- Ya-Shu Chen, Han Chiang Liao, and Ting-Hao Tsai. 2013. Online real-time task scheduling in heterogeneous multicore system-on-a-chip. IEEE Transactions on Parallel and Distributed Systems 24, 1 (2013), 118--130. Google Scholar
Digital Library
- Leonardo Ecco, Sebastian Tobuschat, Selma Saidi, and Rolf Ernst. 2014. A mixed critical memory controller using bank privatization and fixed priority scheduling. In IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA’14). Google Scholar
Cross Ref
- Manil Dev Gomony, Benny Akesson, and Kees Goossens. 2015. A real-time multichannel memory controller and optimal mapping of memory clients to memory channels. ACM Transactions on Embedded Computing Systems (TECS) 14, 2, Article 25 (2015). Google Scholar
Digital Library
- Sven Goossens, Benny Akesson, and Kees Goossens. 2013a. Conservative open-page policy for mixed time-criticality memory controllers. In IEEE Conference on Design, Automation and Test in Europe (DATE’13). Google Scholar
Cross Ref
- Sven Goossens, Tim Kouters, Benny Akesson, and Kees Goossens. 2012. Memory-map selection for firm real-time SDRAM controllers. In IEEE Conference on Design, Automation and Test in Europe (DATE’12). Google Scholar
Cross Ref
- Sven Goossens, Jasper Kuijsten, Benny Akesson, and Kees Goossens. 2013b. A reconfigurable real-time SDRAM controller for mixed time-criticality systems. In IEEE International Conference on Hardware/Software Codesign and System Synthesis (CODES+ ISSS’13). Google Scholar
Cross Ref
- Patrick Graydon and Iain Bate. 2013. Safety assurance driven problem formulation for mixed-criticality scheduling. International Workshop on Mixed Criticality Systems (WMC), RTSS (2013).Google Scholar
- Mohamed Hassan and Hiren Patel. 2016a. Criticality-and requirement-aware bus arbitration for multi-core mixed criticality systems. In IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS’16). Google Scholar
Cross Ref
- Mohamed Hassan and Hiren Patel. 2016b. MCXplore: An automated framework for validating memory controller designs. In IEEE Conference on Design, Automation 8 Test in Europe (DATE’16).Google Scholar
Cross Ref
- Mohamed Hassan, Hiren Patel, and Rodolfo Pellizoni. 2015. A framework for scheduling DRAM memory accesses for multi-core mixed-time critical systems. In Proceedings of the 2015 IEEE 21st Real-Time and Embedded Technology and Applications Symposium (RTAS’15). Google Scholar
Cross Ref
- Christopher R. Houck, Jeffery A. Joines, and Michael G. Kay. 1995. A genetic algorithm for function optimization: A Matlab implementation. NCSU-IE TR (1995).Google Scholar
- Engin Ipek, Onur Mutlu, José F. Martínez, and Rich Caruana. 2008. Self-optimizing memory controllers: A reinforcement learning approach. In IEEE International Symposium on Computer Architecture (ISCA’08). Google Scholar
Digital Library
- Javier Jalle, Eduardo Quinones, Jaume Abella, Luca Fossati, Marco Zulianello, and Francisco J. Cazorla. 2014. A dual-criticality memory controller (DCmc): Proposal and evaluation of a space case study. In IEEE Real-Time Systems Symposium (RTSS’14). Google Scholar
Cross Ref
- JEDEC. 2010. JEDEC DDR3 SDRAM specifications JESD79-3E. Retrieved from http://www.jedec.org/sites/default/files/docs/JESD79-3E.pdf.Google Scholar
- Ron Kalla, Balaram Sinharoy, and Joel M. Tendler. 2004. IBM Power5 chip: A dual-core multithreaded processor. IEEE Micro 24, 2 (2004), 40--47. Google Scholar
Digital Library
- Hokeun Kim, David Broman, Edward A. Lee, Michael Zimmer, Aviral Shrivastava, and Junkwang Oh. 2015. A predictable and command-level priority-based DRAM controller for mixed-criticality systems. In IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS’15).Google Scholar
Cross Ref
- Hyoseung Kim, Dionisio de Niz, Bjorn Andersson, Mark Klein, Onur Mutlu, and Ragunathan Rajkumar. 2014. Bounding memory interference delay in COTS-based multi-core systems. In IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS’14). Google Scholar
Cross Ref
- H. Kim, J. Lee, N. B. Lakshminarayana, J. Lim, and T. Pho. 2012. MacSim: Simulator for Heterogeneous Architecture. (2012).Google Scholar
- Yogen Krishnapillai, Zheng Pei Wu, and Rodolfo Pellizzoni. 2014. A rank-switching, open-row DRAM controller for time-predictable systems. In IEEE Euromicro Conference on Real-Time Systems (ECRTS’14). Google Scholar
Digital Library
- Yonghui Li, Benny Akesson, and Kees Goossens. 2014. Dynamic command scheduling for real-time memory controllers. In IEEE Euromicro Conference on Real-Time Systems (ECRTS’14). Google Scholar
Digital Library
- Clifford W. Mercer, Stefan Savage, and Hideyuki Tokuda. 1993. Processor Capacity Reserves for Multimedia Operating Systems. Technical Report. DTIC Document. Google Scholar
- Anna Minaeva, Přemysl Šŭcha, Benny Akesson, and Zdeněk Hanzálek. 2016. Scalable and efficient configuration of time-division multiplexed resources. Elsevier Journal of Systems and Software 113 (2016), 44--58. Google Scholar
Digital Library
- Marco Paolieri, Eduardo Quiñones, Francisco J. Cazorla, and Mateo Valero. 2009. An analyzable memory controller for hard real-time CMPs. IEEE Embedded Systems Letters 1, 4 (2009), 86--90. Google Scholar
Digital Library
- Jason Poovey. 2007. Characterization of the EEMBC benchmark suite. North Carolina State University (2007).Google Scholar
- Andrei Radulescu, John Dielissen, Santiago González Pestana, Om Prakash Gangwal, Edwin Rijpkema, Paul Wielage, and Kees Goossens. 2005. An efficient on-chip NI offering guaranteed services, shared-memory abstraction, and flexible network configuration. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 24, 1 (2005) 4--17. Google Scholar
Cross Ref
- Jan Reineke, Isaac Liu, Hiren D. Patel, Sungjun Kim, and Edward A. Lee. 2011. PRET DRAM controller: Bank privatization for predictability and temporal isolation. In IEEE/ACM International Conference on Hardware/Software Codesign and System Synthesis (CODES+ ISSS’11).Google Scholar
- Martin Schoeberl. 2009. Time-predictable computer architecture. EURASIP Journal on Embedded Systems 2009, Article 2 (2009). Google Scholar
Digital Library
- Prathap Kumar Valsan and Heechul Yun. 2015. MEDUSA: A predictable and high-performance DRAM controller for multicore based embedded systems. In IEEE International Conference on Cyber-Physical Systems, Networks, and Applications (CPSNA’15). Google Scholar
Digital Library
- Zheng Pei Wu, Yogen Krish, and Rodolfo Pellizzoni. 2013. Worst case analysis of DRAM latency in multi-requestor systems. In IEEE Real-Time Systems Symposium (RTSS’13).Google Scholar
Digital Library
- Man-Ki Yoon, Jung-Eun Kim, and Lui Sha. 2011. Optimizing tunable WCET with shared resource allocation and arbitration in hard real-time multicore systems. In IEEE Conference on Real-Time Systems Symposium (RTSS’11). Google Scholar
Digital Library
Index Terms
PMC: A Requirement-Aware DRAM Controller for Multicore Mixed Criticality Systems
Recommendations
Challenges of High-Capacity DRAM Stacks and Potential Directions
MCHPC'18: Proceedings of the Workshop on Memory Centric High Performance ComputingWith rapid growth in data volumes and an increase in number of CPU/GPU cores per chip, the capacity and bandwidth of main memory can be scaled up to accommodate performance requirements of data-intensive applications. Recent 3D-stacked in-package memory ...
Linearly compressed pages: a low-complexity, low-latency main memory compression framework
MICRO-46: Proceedings of the 46th Annual IEEE/ACM International Symposium on MicroarchitectureData compression is a promising approach for meeting the increasing memory capacity demands expected in future systems. Unfortunately, existing compression algorithms do not translate well when directly applied to main memory because they require the ...
Coordinating DRAM and Last-Level-Cache Policies with the Virtual Write Queue
To alleviate bottlenecks in this era of many-core architectures, the authors propose a virtual write queue to expand the memory controller's scheduling window through visibility of cache behavior. Awareness of the physical main memory layout and a focus ...






Comments