- 博客(37)
- 资源 (7)
- 收藏
- 关注
原创 目标检测学习一
参考文章fast R-CNN类:RCNN, SPP NET, FAST RCNN, FASTER RCNN综述|基于深度学习的目标检测(一)
2018-11-21 16:38:08
255
翻译 ARMv7 NEON内在函数和数据类型
介绍最近在学习NEON对数据运算的加速,用在神经网络加速的场景下。从基本的库开始了解如何做到这一点。PS:学习后记:看了公司好多汇编加速代码后,结合自己以前工作,总体感觉如果完全使用汇编代码,代码的可读性确实太差了。我觉得在考虑寄存器、时序、流水线、cache等条件下的C+neon内建函数,会是一个开发效率和执行效率的权衡结果。向量数据类型NEON 向量数据类型是根据以下模式命名的: (...
2018-11-10 18:52:58
6746
转载 IPC用户指南/MessageQ模块的使用
IPC Users Guide/MessageQ ModuleMessageQ API Reference: http://downloads.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/ipc/latest/docs/doxygen/html/_message_q_8h.htmlContents [h
2016-08-15 10:47:18
6266
1
转载 RPMsg_Kernel_Client_Application
http://processors.wiki.ti.com/index.php/RPMsg_Kernel_Client_ApplicationContents [hide] 1 Introduction2 Requirements3 Build3.1 Linux client app3.2 SYS/BIOS slave app4 Run4
2016-08-13 14:17:23
2069
转载 异构多核的全高清H264解码系统设计
原文地址:http://ti.eetop.cn/?action-viewnews-itemid-5338感谢原文作者分享,基本普及了TI DSP&ARM架构的多媒体编解码使用。作者:赖梓昌,杨斌 西南交通大学 信息科学与技术学院,成都 610031摘要: 利用异构多核处理器OMAP4430在多媒体视频编解码上的运算优势,实现了全高清H264
2016-08-13 14:14:37
2379
原创 DRM学习笔记一
http://www.landley.net/kdocs/htmldocs/drm.html非常好的一个链接,直接把DRM说的很透。很多API的功能都写全了。Table of Contents1. Introduction2. DRM InternalsDriver InitializationDriver InformationDriver LoadMemor
2016-08-12 12:59:35
5229
1
原创 DMA导致的CACHE一致性问题解决方案
转载时请标明作者 waterhawk, 原文地址:先简单说一下DMA的CACHE一致性是个啥问题。复制:CPU在访问内存时,首先判断所要访问的内容是否在Cache中,如果在,就称为“命中(hit)”,此时CPU直接从Cache中调用该内容;否则,就 称为“ 不命中”,CPU只好去内存中调用所需的子程序或指令了。CPU不但可以直接从Cache中读出内容,也可以直接往其中写入内容。由于Cac
2016-02-23 18:04:00
15943
3
原创 armv7对应的CACHE操作相关文件解析
最近在使用TI的DRA726芯片。A15端需要访问图像,而图像是在外设空间的,用DMA拷贝到CACHE空间。这样就导致了DMA的CACHE一致性的问题,需要在DMA之后清除所使用图像空间的数据CACHE。以这个A15核心为例,解析一下ARM的CACHE操作,涉及的文件有:cacheflush.h cache-v7.S proc-macros.S proc-v7.S内存是OS
2016-02-23 14:21:14
10093
转载 likely()与unlikely()
likely()与unlikely()在2.6内核中,随处可见,那为什么要用它们?它们之间有什么区别呢?首先明确: if (likely(value))等价于if (value) if (unlikely(value))等价于if (value)也就是说likely()和unlikely()从阅读和理解的角度是一样的。这两个宏在内核中定义如下:#define lik
2016-02-23 11:30:41
400
转载 arm-linux内存页表创建
linux的内存(正式)页表是在内核代码执行到start_kernel函数后执行paging _init函数建立的,这里要注意一个事情就是说,这里paging_init函数可以正常创建内存页表的条件有两个:1、 meminfo已初始化:即初始化物理内存各个node的各个bank,一般对于小型arm嵌入式设备,不涉及多个内存就是一个node和一个bank;这部分
2015-10-16 10:54:45
1184
转载 内存管理单元(MMU)介绍
MMU是存储器管理单元的缩写,是用来管理虚拟内存系统的器件。MMU通常是CPU的一部分,本身有少量存储空间存放从虚拟地址到物理地址的匹配表。此表称作TLB(转换旁置缓冲区)。所有数据请求都送往MMU,由MMU决定数据是在RAM内还是在大容量存储器设备内。如果数据不在存储空间内,MMU将产生页面错误中断。MMU的两个主要功能是:1. 将虚地址转换成物理地址。 2. 控制存
2015-09-23 13:42:07
1112
转载 Linux内核配置电源管理
最近测试板子辐射比较高,希望能在运行时降低功耗和辐射,CPU这部分没啥用到,可以降![*] Power Management support//如果你想让你的Linux支持高级电源管理(也就是平常我们说的软关机、系统休眠等)需要选择它 [ ] Power Management Debug Support//不想调试ACPI,不选[*] Suspend to RAM an
2015-06-15 11:16:22
3239
转载 不再用ifconfig:iproute2套件学习
目前的工作,基本不会涉及到网络的使用,不过互联网公司对这方面要求颇高。学习一下设置和删除Ip地址要给你的机器设置一个IP地址,可以使用下列ip命令:$ sudo ip addr add 192.168.0.193/24 dev wlan0请注意IP地址要有一个后缀,比如/24。这种用法用于在无类域内路由选择(CIDR)中来显示所用的子网掩码。在这个例子中,子
2015-06-15 10:56:30
1894
转载 CRAMFS镜像制作
usage: mkfs.cramfs [-h] [-v] [-b blksz] [-e edition] [-i file][-n name] dirname outfile-h print this help 打印帮助-v be verbose 打印版本-E make all warnings errors(non-zero exit statu
2015-06-10 10:14:44
467
原创 分享一下source insight 3.5的快捷配置及我的utils.em
这周重新装了一下系统,原来系统32位WIN7,实在是浪费了CPU和内存。装完以后,简直是...虚拟机5秒就启动完成了,电脑也不会卡了。重新配置source insight 3.5分享一下整理的utils.em修改了一些网上的函数。使用上需要完成:1. 配置电脑环境变量MYNAME=***2.将文件替换原始原件(open project:base Utils.em)
2015-06-04 13:51:37
5572
1
原创 ARM GDB交叉编译
参考:http://blog.youkuaiyun.com/jwybobo2007/article/details/7636621http://www.linuxidc.com/Linux/2012-08/68272.htmhttp://blog.sina.com.cn/s/blog_6e22828801015lbk.html今天新平台上面GDB有问题,自己动手编译一下GDB。下载
2015-05-28 17:04:38
1640
原创 GDB断点失效(2)
上一篇说过,GDB使用的时候表现很奇怪,线程都看不到,只能看到主线程,打其他线程的断点,都失效。刚刚把源码也放到目录下,断点是打到了,但是同时程序也退出了。提示信息如下:Program terminated with signal SIGTRAP, Trace/breakpoint trap.百度之后,发现GDB WIKI里有一个问题描述很类似。http://sourcew
2015-05-28 13:51:36
11217
转载 GDB断点失效
GDB还是很深的学问,以前一直深知高并发程序调试的难度,还是要找时间去学习一下。最近多线程的问题比较多,GDB用着总是怪怪的,水还真是深呐。info thread只显示一个线程,但实际上我的线程数应该是很多的,不知道为什么其他线程都看不到。打断点,i b可以看到,但是程序却不会停止,感觉那个线程已经脱离了当前进程存在了。下面这个帖子是因为fork出来子进程,而我是用线程pthr
2015-05-28 09:55:50
7321
原创 DRA62X提升GPU频率
这几天开发新平台,GPU性能依然是瓶颈之一,查了手册,发现GPU频率可以提高:从名称上看,应该是某种加强模式,可以提升。要求是增加核心供电电压:所以,调整DCDC之后,CVDD 1.26V,CVDD_ARM 1.35V。硬件调整准备就绪,现在就要看如何提升时钟频率了。来看一下DRA62X的时钟域从这张图说明来看,SGX CLK应该就配置一下DPLL
2015-05-27 15:10:56
1555
原创 linux格式化TF卡工具
之前一直使用SDK包里的脚本,很多参数和命令,实在记不住。今天找了一个图形工具gparted。非常好用,使用前需要安装:sudo apt-get install gparted启动需要root权限。
2015-05-26 15:23:56
2532
转载 gdb 多线程调试
http://hi.baidu.com/hcq11/blog/item/9f5bfc6e696209d680cb4a25.html http://hi.baidu.com/litto/blog/item/759389dd198111375882dd1e.html http://blogold.chinaunix.net/u3/94700/showart_2389432.html
2015-05-26 13:47:15
353
转载 YUV420详解
V4L2_PIX_FMT_NV12 ('NV12'), V4L2_PIX_FMT_NV21 ('NV21')V4L2_PIX_FMT_NV12 ('NV12'), V4L2_PIX_FMT_NV21 ('NV21')Prev YUV Formats NextNameV4L2_PIX_FMT_NV
2015-05-21 15:45:39
738
原创 TI81XX系列TI814X|DRA642调试TFT屏
DRA642(=TI8148车规级)有视频输出的驱动,但第一次调视频输出,有很多是代码外的东西,需要学习和总结。协作单位给了我们一个TFT屏的时序要求,让我按这个调,没有TFT信号和DATASHEET,一开始抓瞎一片。DRA642的视频输出驱动实现是在vpss.ko中,代码在$(kernel)/drivers/video/ti81xx目录下。调试TFT屏,主要是针对不同
2015-03-27 14:40:02
2383
转载 Linux下常用SVN命令
LINUX下SVN命令,老是会忘,总要查,自己转载一下备用吧1、将文件checkout到本地目录svn checkout path(path是服务器上的目录)例如:svn --username [usr] checkout [svn url] [path]简写:svn co 2、往版本库中添加新的文件svn add file例如:svn add test
2015-03-13 15:00:35
351
转载 sysfs和/sys,补充设备模型知识
之前看到的非常经典的介绍,是IBM写的,URL:http://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/。借花献佛,/sys下面最经常用到的就是 “属性”,通过属性的store和show接口,在用户态直接访问内核态。对于很多设备驱动调试非常有用。sysfs 与 /syssysfs 文件系统总是被挂载在 /sys 挂载点
2015-03-12 14:29:37
1360
转载 javascript函数内建函数内置函数
javascript函数一共可分为五类: ·常规函数 ·数组函数 ·日期函数 ·数学函数 ·字符串函数---------------------------------------------------------------------------------------1.常规函数 javascript常规函数包括以下9个函数:
2015-03-10 15:46:59
1553
转载 JavaScript 闭包
今天开始学习javascript。以前经常看到闭包这个词,还有反射,今天就先学一下什么是闭包。这个帖子不错,如果对面向对象有深入理解,知道引用的概念,估计十分钟就能理解了吧。1.简单的例子首先从一个经典错误谈起,页面上有若干个div, 我们想给它们绑定一个onclick方法,于是有了下面的代码 0 1 2 3
2015-03-10 15:01:24
619
原创 翻篇--致过去的几年和未来一年的学习计划
一个计算机的学生,机缘巧合做了嵌入式,学校的几年,工作的两年,一直做着这个领域。但嵌入式真不是我所爱,最喜欢的还是计算机的核心,高并发,分布式,数据结构和算法。去年底换了一个公司,现在工作强度小一些,今年是个过去期。利用工作之余的时间,重新学习互联网、移动互联网、大数据相关的最新技术方向。努力在明年这个时候,对我的这几年嵌入式开发说拜拜。人活一辈子,一定要做自己喜欢的事
2015-03-09 09:16:29
1652
转载 Netra(DM8168)基于Rdk平台的软件框架设计
今天还是偷懒,转一篇TI达芬奇系列RDK架构的文章。最近公司在这个领域里用的都是TI车规级别的达芬奇CPU。这篇文章稍微说明了一下RDK中LINK的概念、功能和API。LINK层是RDK架构中最基础的部分,基本上是企业开发者开发的必经之路。在RDK架构里,LINK层以下的部分,基本很少需要修改(除了类似我现在的项目,需求变态到需要把RDK吃透,从下至上的优化)。文章说明了一些LINK AP
2015-03-06 10:21:24
1178
原创 设备驱动模型:字符、BUS、platform、sysfs的关系
以前做了很多设备驱动,对于字符设备,平台设备,I2C设备,块设备,SPI设备,USB设备等等,开始的时候一直没太明白是怎么回事。做驱动的时候,对这些模型也没有搞清楚关系,主要都是挖掘一些硬件特性。后来看了《设备驱动开发详解》以后,对这些设备驱动模型终于有了一个比较清晰的认识。一、设备类型的关系从时间上来看,最早的设备类型是:字符设备,块设备,网络设备;这些设备模型不知道是什么时
2015-03-05 09:56:51
626
转载 Linux Suspend流程介绍
今天一早来写文章,先偷个懒,转载一篇比较经典的文章。上一篇文章写的是DDR自刷新功能,实际上自刷新就是为了在待机状态下低功耗。这个文章非常详细的分析了suspend的调用流程,实际上这段代码基本不需要维护,我们要做的是,对于每个设备驱动模块,如何在suspend的过程中,被suspend调用到,并进入低功耗模式。先有个总体概念,再细致分析DRA642的各个模块是如何做的,自定义的设
2015-03-04 09:22:25
1047
原创 DRA642的DDR自刷新功能
DDR自刷新是一个在移动设备领域非常常用的特性。网上很难找到TI DM814X系列CPU的DDR自刷新说明,甚至FAE都没有触及过这个特性。因为这个系列的CPU本身不是为移动设备设计的,所以多数使用者不会涉及这个部分。这也是我写这篇文档的原因,如果确实需要用到这个特性,可以参考一下。另外,没有用过这个特性的人,也可以了解一下。DDR处于自刷新状态时,CPU无法访问DDR数据,D
2015-03-03 16:04:27
3877
原创 处理简单的触屏输入
配合上一篇文章,zForce的内核驱动将触屏对接到/dev/input/event0设备文件上。1. 利用单点触控完成虚拟键盘效果写了一个用户态的程序,在屏幕上划分9个区域,作为虚拟键盘。需要读取点击事件,并以up时位置作为点击位置。程序是只处理单点触控效果,多点触控需要根据 trace id,再进行划分。#include #include #include #inclu
2015-03-02 14:48:27
999
原创 zForce红外触屏处理芯片驱动分析
zForce红外触屏处理芯片驱动源码有两套,分别为linux&Android、wince系统实现。我用的是linux系统,应用不是QT实现的,界面都是opengl实现,所以,要自行处理触屏输入控制。linux的触屏驱动使用了input子系统,前一天已经做了一个基本学习,现在分析一下驱动实现。硬件接口:IR触屏使用I2C访问,有数据时,DATAREADY会置低,3.3V供电,
2015-03-02 09:47:40
1040
转载 Linux输入子系统:事件的编码 -- event-codes.txt
最近在搞一个红外触摸屏的驱动和控制。转载一些学习到的内容。首先,这个触摸屏、鼠标、键盘等输入设备,都是使用LINUX的input子系统。在/drivers/input/input.c中有内核态驱动实现,/include/linux/input.h是API接口说明,用户态和内核态驱动需要包含头文件很奇怪的是,不知道为何,我编译用户态程序时,多点触控的宏定义是不存在的。
2015-02-28 17:36:04
708
2018自动驾驶与人工智能研究报告.pdf
2018-11-29
apollo pilot safety report百度阿波罗系统安全报告
2018-11-29
2018人工智能之自动驾驶研究报告
2018-11-29
2018人工智能AI与自动驾驶报告.pdf
2018-11-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人