DavinciDM8168的开发是一套大的系统,包括ARM、DSP、以及他们的通信协作。对学习思路做简单总结:

    一.  对于整体框架的把握
 参考了一些文章。介绍davinci整体基础知识和linux开发环境的搭建。认真阅读了以下文章,收获很大。
    7月安装学习ubunutu10.04,开始了linux的学习。了解了一些常用的命令和文本命令(也还并不熟练),了解了linux开机启动的顺序,知道如何设置服务程序的自启动,添加PATH等。。
    DM8168ezsdk很强大,gcc工具链、ezsdk安装完成后,linux开发环境搭建也就基本完成了。nfs、tftp等模块都自动安装好了。默认安装情况下,用tftp来引导linux内核(/tftpboot目录),用nfs来引导linux文件系统($HOME/targetfs目录)。由于自己还是linux菜鸟,参照网上资料,自己安装配置使用了下nfs、tftp。很简单,不过刚开始还是看了很长时间。
    至此,算是大致了解了davinci系列的开发流程和部分细节。
   二.   对于嵌入式linux的学习
  软硬件平台架构如图所示:
       <图嵌入式linux软硬件平台架构>(摘自 国嵌linux教学视频)
   其知识结构为:
  • 嵌入式处理器与裸机程序开发
  • linux系统管理
  • linux应用程序开发
  • linux驱动程序开发
  • linux内核开发与系统移植
      -(系统管理): linux系统定制;命令;nfs、tftp;shell编程
      -(应用程序):gcc、gdb、makefile工具;文件时间编程;多进程多线程程序设计;进程间通讯;网络编程;QT,android图形化应用程序开发
      -(内核开发):内核配置与裁剪;内核模块开发;根文件子系统;进程子系统;内存子系统;Proc文件系统; 系统调用;内核定时器;内核异常分析
      -(驱动程序开发):字符设备;总线、设备、驱动模型;硬件访问技术;中断处理;ipput设备驱动;平台驱动;USB、网卡、触摸屏、串口
       学习应该循序渐进:
   
 

还需要结合DM8168图像处理系统的需要一步一步的学习。(最终实现在ubunut上生成可执行文件,实现dsp图像处理算法和ARM图形化的界面交互)
   三.   对于DSP的学习
  图像处理算法是系统的核心。在dsp上将符合xDM标准的算法生成*.lib(对应linux下的*.a64p,修改后缀即可),组织成DSPserver(*.x64p),供ARM端Code Engine调用。
    对单独DSP端的开发相对而言较为熟悉,还应该进一步熟悉和运用ti提供的DSPlib和IMGlib,以提高编程效率。DM8168的内存映射等也需要在开发过程中进一步熟悉。
  
   要学的东西很多,一步一步的走,然后分工也很重要。
 
2013.8.4
eaglediao

【DM8168学习笔记6】学习思路整理的更多相关文章

  1. golang学习笔记13 Golang 类型转换整理 go语言string、int、int64、float64、complex 互相转换

    golang学习笔记13 Golang 类型转换整理 go语言string.int.int64.float64.complex 互相转换 #string到intint,err:=strconv.Ato ...

  2. canvas学习笔记、小函数整理

    http://bbs.csdn.net/topics/391493648 canvas实例分享 2016-3-16 http://bbs.csdn.net/topics/390582151 html5 ...

  3. java JDK8 学习笔记——助教学习博客汇总

    java JDK8 学习笔记——助教学习博客汇总 1-6章 (by肖昱) Java学习笔记第一章——Java平台概论 Java学习笔记第二章——从JDK到IDEJava学习笔记第三章——基础语法Jav ...

  4. python3.4学习笔记(七) 学习网站博客推荐

    python3.4学习笔记(七) 学习网站博客推荐 深入 Python 3http://sebug.net/paper/books/dive-into-python3/<深入 Python 3& ...

  5. 20155234 2016-2017-2第十周《Java学习笔记》学习总结

    20155234第十周<Java学习笔记>学习总结 教材学习内容总结 网络编程 在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定 ...

  6. 20155234 2610-2017-2第九周《Java学习笔记》学习总结

    20155234第九周<Java学习笔记>学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC(Ja ...

  7. #学习笔记#e2e学习使用(二)

    前言: <#学习笔记#e2e学习使用(一)>主要记录了Vue项目的创建到e2e环境的搭建,以及期间遇到的各种问题和解决方法.本文建立在基础测试环境搭建完毕能正确运行的情况下,编写测试代码, ...

  8. #学习笔记#e2e学习使用(一)

    本文仅限于记录本人学习的过程,以及怎么踩的坑,是如何解决的.逻辑肯定是混乱的,有用之处会抽出共通另行发帖. 最终目标:要运用于Vue项目中,进行功能测试甚至自动化测试. 一.e2e概念 理解:end ...

  9. mybatis学习笔记之学习目录(1)

    mybatis学习笔记之学习结构(1) 学习结构: 1.mybatis开发方法 原始dao开发方法(程序需要编写dao接口和dao实现类) mybatis的mapper接口(相当于dao接口)代理开发 ...

  10. Vue学习笔记-rest_framework_jwt 学习

    一  使用环境 开发系统: windows 后端IDE: PyCharm 前端IDE: VSCode 数据库: msyql,navicat 编程语言: python3.7  (Windows x86- ...

随机推荐

  1. 372 在O(1)时间复杂度删除链表节点

    原题网址:http://www.lintcode.com/zh-cn/problem/delete-node-in-the-middle-of-singly-linked-list/ 给定一个单链表中 ...

  2. 第四篇:java读取Excel简单模板

    场景:对于经常需要导入Excel模板或数据来解析后加以应用的,使用频率非常之高,做了一个比较稳定的版本,体现在这些地方工具:org.apache.poi使用前必须了解这些:1.要解析,那肯定先判断是不 ...

  3. MySQL二进制包安装及启动问题排查

    环境部署:VMware10.0+CentOS6.9(64位)+MySQL5.7.19(64位)一.操作系统调整 # 更改时区 .先查看时区 [root@localhost ~]# date -R Tu ...

  4. Linq学习笔记(第一部分)

    本文分享自lliulun的30分钟linq教程,地址:http://www.cnblogs.com/liulun/archive/2013/02/26/2909985.html 一:与LINQ有关的语 ...

  5. Ubuntu usb设备端口号绑定

    1.将串口设备插入USB口,通过lsusb查看端口信息.例如: ID 1a86:7523 表示usb设备的ID(这个ID由芯片制造商设置,可以唯一表示该设备) 1a86 usb_device_desc ...

  6. duilib教程之duilib入门简明教程5.自绘标题栏

    如果大家有做过标题栏的自绘,肯定会感慨各种不容易,并且现有的一些资料虽然完美的实现了功能,但是代码比较乱,需要自行整理.如果用duilib,就是小case啦.    duilib其实并没有区分标题栏和 ...

  7. 逻辑回归代码demo

    程序所用文件:https://files.cnblogs.com/files/henuliulei/%E5%9B%9E%E5%BD%92%E5%88%86%E7%B1%BB%E6%95%B0%E6%8 ...

  8. nvm-windows 之nodejs 版本管理

    前言   最近准备学习后端相关的东西,但是公司目前的node版本是偏低的,但是现在的node版本变化太快.刚好也有nvm这种版本管理器的存在,简直了都.兴奋之后发现,不支持windows系统,此处~~ ...

  9. VUE下echarts宽度响应式

    window.addEventListener("resize", () => { myChart2.resize();});

  10. svn使用方法以及使用教程

    一.什么是svnSVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS. 二.svn的下载安装下载地址:https: ...