最近对CPU设计兴趣了,想好好学习一下!

    以前因为自考的事情,很多想学习的东西都只有靠边站。我一直对操作系统底层、驱动程序、电子电路很感兴趣,应该是说有相当浓厚的兴趣。
    今年有了时间,把前年买的一本《深入理解计算机系统》,以前只看了一些偏软的内容,现在有时间从头开始研究,发现在第4章,作者从头至
尾讲解了CPU 的设计,而且这种Y86的CPU不需要任何硬件。我在网站下了Y86的代码,经过一番扎腾以后,终于可以运行了。更强的是作者竟然
写了HCL转化为可执行程序的代码,用TCL/Tk写的仿真界面,当我把CPU代码编译以后运行用Y86写的汇编以后,觉得一切太神奇了。
    认真的学习了一段时间,也小有收获,突然一下明白了,CPU、机器码、寄存器、汇编语言、高级语言之间的关系,想想工作4年了,也写了不少的
程序,可是从来没有一下子认识这么清楚。前一段时间买了些IC和数字设计方面的书,发现数字设计和程序设计一样充满乐趣。
    学习要循序渐进的,现在CPU设计部分快看完了,已经看到流水线处理了,把作者写的Y86的CPU、Y86汇编器以及仿真器的代码研究透。要想把这
些学习好,需要学习Yacc和Lex,可以参考《Yacc与Lex第二版》,还好咱UNIX和Linux很熟悉,应该一段时间就可以了,另外就是学习一下TCL/TK,
以前学习一段时间,把"软"CPU研究好以后。我再想学习一下"硬"CPU,去买一段FPGA的开发板,想自己设计一款真正的CPU。
    CPU的设计要求太高了,一开始觉得作者讲得不深,但是看到后面讲到5道流水线只是80年代的处理器设计水平,这还不考虑工艺水平,呵呵,反正
觉得太有意思了。了解CPU设计以后,突然觉得软件上很多很悬乎的名词变得很简单了,比如虚拟机、多线程。我相信随着深入的学习,在软件的认识
也会越来越深的。

你可能感兴趣的:(cpu)