# 群聯 SSD Controller for NMC
## Target Hardware

### SSD
[解構SSD--看完變成專家](https://www.bingle.com.tw/%E8%A7%A3%E6%A7%8Bssd-%E7%9C%8B%E5%AE%8C%E8%AE%8A%E6%88%90%E5%B0%88%E5%AE%B6)
### Controller
The controller for non-volatile drive, such as
* **SSD controller**
* **Flash controller**
The controller might be embedded with ARM based micro-controller, which is capable of doing AI inference/(learning).
Besides, there might be AI acceleration hardware alongside the controller to assist the computation of AI model.
## Near Memory/SSD Computing (NMC)
### Why NMC?
[Reference](https://semiengineering.com/in-memory-vs-near-memory-computing/)
* Bring the memory closer to the processing tasks to speed up the system
* Boosting the data processing functions in the systems
* Increase performance/watt
* Drive new architectures such as neural networks
### Applications of NMC
[Near-Memory Computing: Past, Present, and Future](https://arxiv.org/pdf/1908.02640.pdf)
By bringing compute into the memory, higher throughput can be achieved by tapping into the memory sub-arrays.
This technique also has the potential to increase the energy efficiency.
With built-in scalability and modularity, it can address a range of needs from low-power Internet of Things (IoT) and edge devices all the way to data centers and servers.
* **Cybersecurity**
[SSD-Insider: Internal Defense of Solid-State Drive against Ransomware with Perfect Data Recovery](https://par.nsf.gov/servlets/purl/10084234)
* Malware detection algorithm observes I/O patterns of a host system and decides whether or not the host is being attacked by ransomwares in an early stage
* Detection latency is inevitable by any means, so some portion of disk blocks will have been already encrypted
* The speed of detection thus becomes a great of significance
[Advanced Countermeasures: Integrating SSDs Into Cyber-Security Defense](https://www.flashmemorysummit.com/Proceedings2019/08-06-Tuesday/20190806_SSDS-102-1_Jean.pdf)
[網路安全新標準 群聯攜手Cigent共同推出自我防衛SSD方案
](https://www.phison.com/zh-tw/company/newsroom/press-releases/general/2100-%E7%B6%B2%E8%B7%AF%E5%AE%89%E5%85%A8%E6%96%B0%E6%A8%99%E6%BA%96-%E7%BE%A4%E8%81%AF%E6%94%9C%E6%89%8Bcigent%E5%85%B1%E5%90%8C%E6%8E%A8%E5%87%BA%E8%87%AA%E6%88%91%E9%98%B2%E8%A1%9Bssd%E6%96%B9%E6%A1%88)
* AI/ML cyber-security suite that is tightly integrated with the storage align the protection system with the threat landscape
* The SSD can become another sensor input into the AI/ML engine
* Pushing the detection and response further down the data stack (all the way to the storage device) is a force multiplier for AI/ML defense
* AI/ML cyber-security + tightly integrated storage = solid protection
* **(Edge) AI computing**
[Intel Labs inserts distributed computational units into the memory array](https://www.intel.com/content/www/us/en/research/blogs/compute-near-memory-increases-ai-throughput.html)
* Computing near-memory can reduce data transfer energy and increase throughput in neural networks
* Deploy trained NN model on micro controller or AI accelerator alongside memory
* Convolution neural networks (CNNs) require high data reuse
* Recursive neural networks (RNNs) have low data reuse, but require high memory bandwidth
* With matrix multiplication units embedded inside the memory, compute can performed very close to the memory itself
* This relieves the energy bottleneck of moving the data into the processing unit by augmenting static random-access memory (SRAM) banks with compute logic for dot-product operations