百科问答小站 logo
百科问答小站 font logo



CPU代替SSD主控;是否可行? 第1页

  

user avatar   bei-ji-85 网友的相关建议: 
      

首先,这玩意在嵌入式领域太常见了,很多板子上就是焊着一块NAND FLASH,然后操作系统自己负责控制CPU擦写,前面有人说了,Linux就有支持,不止Linux,很多其他嵌入式OS都有,甚至还有第三方厂商专门做这个。

好处,做板子的厂商省事了(焊个片子很简单),坏处,做软件的厂商很麻烦(不同板子的接口不一样,需要软件做适配)。

答案是可行的,但操作系统需要单独配驱动,需要每个板子配一个驱动,而如果是SATA口,只要适配AHCI/ATA驱动就可以了,二者的难度明显不一样。作为一些写嵌入式系统的人,我几乎没见过谁喜欢NFTL/MTD这套代码,逻辑太复杂太难看了,别指望Windows给每个厂商做适配。

并且这样做速度一定就快吗?未必,CPU是比SSD主控性能要好的多,但影响SSD性能的还包括算法、通道数、缓存,这些如果都打包给CPU做的话,反而是一个负担,只有在特定场景下,这么做才有意义。还就就是怎么访问呢?嵌入式用GPIO,x86的架构下还要跟ACPI结合一下吧?掉电管理咋做呢?

现在NAND FLASH的种类繁多,并没有像DDR那样有统一的标准,所以,拿CPU代替SSD主控只会增加系统复杂度。


user avatar   haozhi-yang-41 网友的相关建议: 
      

如果不计一切代价,技术上当然没问题。

毕竟什么主控啊,什么芯片啊,本质上都和 CPU 一样,都是计算器和控制器。只要把针脚引脚接口暴露出来,CPU 当然可以接管控制。


但是奇怪的是,为什么要这么干?

毕竟那么多外围的控制芯片,其最初的目的就是要分担 cpu 的负担。尤其是高速 CPU 和低速外设之间的速度差异,会导致 CPU 性能严重的空耗(每次存取数据都要慢慢等,而不是外部控制器先操作好加载好再通知 CPU)。

我粗略的估计一下的话,这么一来,恐怕50%的性能下降恐怕少不了。如果把所有外设都用 CPU 直接接管,那相当于废掉了 DMA,我觉得就是一夜回到奔一甚至586的水平了。




  

相关话题

  PS4 PRO更换SSD或者SSHD有什么具体的型号推荐吗? 
  AMD处理器真的很不待见很折腾吗? 
  Mac 上使用 SSD 进行 Win To Go 的体验如何? 
  为什么市面上没有山寨的 CPU 卖? 
  华为麒麟 CPU 的指令集是从哪国哪家公司买来的技术? 
  历史上有哪些厉害的 CPU? 
  男生数码产品可以多到什么程度? 
  按下开机键后,电脑都干了些什么? 
  回收的电子器件是用来干什么的? 
  有消息称台积电获得向华为供货许可,如何看待这一消息? 

前一个讨论
为什么现在手机都没有 USB 存储了?
下一个讨论
能问一下,是不是所有的USB键盘都支持OTG?





© 2025-05-06 - tinynew.org. All Rights Reserved.
© 2025-05-06 - tinynew.org. 保留所有权利