我一个搞FPGA的也开始写关于软件语言的blog了。最近好久没写VHDL了,实验室这边马上要毕业交接了,接的小项目里面也鲜有做FPGA的,因此用这段空余时间准备自学一些点软件相关的东西。我自己的大概思路是
1,对软件的编程语言有一个更加深入的理解,对象就是C/C++,之前也系统的学过,这次主要是对一些深入的问题进行研究;
2,学习软件底层的一些知识,比如编译原理,操作系统。编译原理以前没学过,但前段时间扫了一眼相关的书发现更多的是从实现角度去讲(语法检查分析这种),而不是系统介绍一门语言的编译规则,我想了解的主要是这个。操作系统这块主要是熟悉一些C/C++设计底层的规则,比如文件、内存管理、字符设备等等的行为;
3,学习linux下的C/C++系统编程,主要是设计驱动这块以及和处理器打交道比较近的地方;
最终这条学习路线也是向硬件去收敛,和后面选的computer architecture贴近。