Skip to content

A behavioural cache model for analysing the cache behaviour under side-channel attack.

License

Notifications You must be signed in to change notification settings

HanJinChi/cache-model

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

An Ideal Cache Model Implemented in C++

Authors:

  • Wei Song (SKLOIS, Institute of Information Engineering, Chinese Academy of Sciences)

Cotributors:

  • Zhenzhen Li (SKLOIS, Institute of Information Engineering, Chinese Academy of Sciences)
  • Boya Li (SKLOIS, Institute of Information Engineering, Chinese Academy of Sciences)

Features

  • A pure C++ (std-11) and modular design.
  • A hierarchical cache supporting the MSI coherence protocol.
  • An ideal cache model:
    • Universal access latency: Accessing a cache block has the same latency disregarding to its location (level, set, way or slice) and status (hit or miss).
    • Ideal hit/miss status: Search algorithms can directly and accurately inquire the status of a cache block (hit or miss) with no time penalty.
    • No TLB noise: Virtual addresses are translated into physical addresses before cache accesses.
  • Supporting user defined cache set mapping, tagging, replacement functions.
  • Supporting the Intel complex addressing scheme.
  • Sophisticated tracing and reporting system.

References

  • Wei Song. 支持一致性缓存的Spike仿真器. CRVA联盟技术研讨会, 中国北京, 2020年7月18日. [PDF, Video]
  • Wei Song and Peng Liu. Dynamically finding minimal eviction sets can be quicker than you think for side-channel attacks against the LLC. In Proc. of the International Symposium on Research in Attacks, Intrusions and Defenses (RAID), Beijing, China, pp. 427–442, September 2019. [Web]
  • Zhenzhen Li and Wei Song. 升级RISC-V的指令级仿真器Spike的缓存模型. In 中国RISC-V论坛, 中国深圳, 2019年11月13日. [PDF]

License

GPL.

Notice

For the model used in the RAID-2019 paper, refer to the raid-2019 branch.

About

A behavioural cache model for analysing the cache behaviour under side-channel attack.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 99.9%
  • Makefile 0.1%