简单介绍NIO的作用就是改进程序的性能。由于有时候程序的性能瓶颈不再是CPU,而是IO。这时候NIO就派上用场了。NIO的原理就是尽量利用系统底层的资源来提高效率,比方利用DMA硬件减小CPU负荷,利用操作系统的epoll机制避免线程频繁切换。通过底层资源提高系统的吞吐量。缓冲区缓冲区就是一个固定大...
分类:
编程语言 时间:
2014-10-07 19:00:33
阅读次数:
239
1.DMA:data memory access //实际的内存存储注:DMA干活的时候是不需要CPU干涉的2.①内存(定义的变量)---外设(寄存器);②内存---内存③外设---外设(一个外设的寄存器到另一个外设的寄存器)3.STM32有两个DMA控制器如图:4.举例说明:(内存到外设,串口1 ...
分类:
其他好文 时间:
2014-10-04 21:41:47
阅读次数:
277
WIZnet W5500 支持高达 80MHz SPI 时钟,所以用户可用 MCU来提供一个最大传输速率的高速以太网SPI通讯。本文中,我将展示如何用STM32 MCU来让W5500达到最大传输速率。
当使用来自STMicro的Cortex M3/M4产线的32位处理器,以太网传输速率可以在使用SPI通讯模式事产生最大变化。我将比较使用SPI标准模式和SPI DMA模式的不同传输速率。...
分类:
其他好文 时间:
2014-09-18 18:58:04
阅读次数:
483
第二章
大概的内部组成 IO端口寻址:
统一寻址: 就是把地址归入存储器寻址范围.
独立寻址: 跟存储器分开,专门的寻址空间
没怎么理解, PC机一般都是采用独立寻址,
见下图 在linux里,可以在 cat /proc/ioports 查看
访问控制:
循环/中断/DMA
循环消耗CPU时间
所以...
分类:
系统相关 时间:
2014-09-12 13:10:13
阅读次数:
217
1、mmap系统调用的实现过程,该系统调用直接将设备内存映射到用户进程的地址空间。2、用户空间内存如何映射到内核中(get_user_pages)。3、直接内存访问(DMA),他使得外设具有直接访问系统内存的能力。linux中地址类型:用户虚拟地址、内核虚拟地址、内核逻辑地址(与物理地址是线性关系)...
分类:
其他好文 时间:
2014-09-07 10:59:45
阅读次数:
225
一、S3C2410内置的UART控制器S3C2410内部具有3个独立的UART控制器,每一个控制器都能够工作在Interrupt(中断)模式或DMA(直接内存訪问)模式,也就是说UART控制器能够在CPU与UART控制器传送数据的时候产生中断或DMA请求。而且每一个UART控制器均具有16字节的FI...
分类:
其他好文 时间:
2014-09-07 10:55:54
阅读次数:
417
使用Xilinx EDK调用microblaze软核,搭建一个微小系统,然后用modelsim来仿真xapp1052的DMA收发控制
分类:
移动开发 时间:
2014-09-02 07:56:24
阅读次数:
881
1.概念 SurfaceView是View类的子类,可以直接从内存或者DMA等硬件接口取得图像数据,是个非常重要的绘图视图。它的特性是:可以在主线程之外的线程中向屏幕绘图上。这样可以避免画图任务繁重的时候造成主线程阻塞,从而提高了程序的反应速度。在游戏开发中多用到SurfaceView,游戏中的.....
分类:
其他好文 时间:
2014-09-01 12:33:03
阅读次数:
319
linux串口驱动分析硬件资源及描写叙述 s3c2440A 通用异步接收器和发送器(UART)提供了三个独立的异步串行 I/O(SIO)port,每一个port都能够在中断模式或 DMA 模式下操作。UART 使用系统时钟能够支持最高 115.2Kbps 的波特率。每一个 UART 通道对于接收.....
分类:
系统相关 时间:
2014-08-26 19:05:06
阅读次数:
345
Pcie总线控制的DMA设计(BMD),参考xilinx官方demo xapp1052建立ISE工程,对其综合,仿真,并使用chipscopes抓包测试DMA读写。
分类:
移动开发 时间:
2014-08-07 03:02:38
阅读次数:
363