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. Python Fabric模块详解

    Python Fabric模块详解 什么是Fabric? 简单介绍一下: ​ Fabric是一个Python的库和命令行工具,用来提高基于SSH的应用部署和系统管理效率. 再具体点介绍一下,Fabri ...

  2. POJ - 2778 ~ HDU - 2243 AC自动机+矩阵快速幂

    这两题属于AC自动机的第二种套路通过矩阵快速幂求方案数. 题意:给m个病毒字符串,问长度为n的DNA片段有多少种没有包含病毒串的. 根据AC自动机的tire图,我们可以获得一个可达矩阵. 关于这题的t ...

  3. 面试系列15 如何保证Redis的高并发和高可用

    就是如果你用redis缓存技术的话,肯定要考虑如何用redis来加多台机器,保证redis是高并发的,还有就是如何让Redis保证自己不是挂掉以后就直接死掉了,redis高可用 我这里会选用我之前讲解 ...

  4. mac系统升级导致无法在iOS设备中运行Safari Web 调试器

    macOS系统升级之后,可能会导致Safari开发选项中没有iOS设备,进而无法运行Safari Web 调试器. 此问题的解决办法: 请转到设置>常规>重置>重置位置和隐私.现在, ...

  5. java_新特性未整理

    得到的.className method.isAnnotationPresent:判断是否有指定的注解,注解.class method.invoke:执行 */}

  6. Android开发 获取View的尺寸的2个方法

    前言 总所周知,在activity启动的onCreate或者其他生命周期里去获取View的尺寸是错误的,因为很有可能View并没有初始化测量绘制完成.你这个时候获取的宽或的高不出意外就是0.所以,我们 ...

  7. String相加解析

    Java代码 package com.utils.test; public class TestObject { public static void main(String[] args) { St ...

  8. 使用 SourceTree 操作时弹出 password required

    通过 https 的方式克隆仓库的,SourceTree 推送等操作的时候会弹出提示要求输入密码. 在仓库里面设置: 远程仓库-选中仓库-点击编辑-修改 url 路径, 路径格式,以码云为例: htt ...

  9. MYSQL获取同时关注了某两个(或者N个)用户的用户

    使用redis的set类型数据的话会比较容易,但是业务场景就是在mysql里面,因此也需要思考解决方法 表结构: CREATE TABLE `table_name` ( `id` ) unsigned ...

  10. WebLogic使用总结(二)——WebLogic卸载[转]

    一.WebLogic 12c的卸载 WebLogic的卸载是非常容易的,找到WebLogic的卸载程序,如下图所示: