一种新颖的多媒体SoC芯片--Virgine G2
扫描二维码
随时随地手机看文章
来源:单片机及嵌入式系统应用 作者:曾 煜 摘要:韩国adchips公司推出的内嵌32位微处理器的多媒体芯片virgine g2,集视频、音频处理为一身,内部包括1个基于三维图形算法的二维图形加速器,还嵌入了1个32通道的8/16位音频引擎,以及视频dac、dram控制器、dram控制器、dma、定时器、双串口等多种外设。本文就韩国adchips公司的多媒体处理芯片virgine g2的结构和使用的方便性作一些分析。 关键词:嵌入式eisc cpu 图像加速器 音频引擎pc内部是由cpu、主板、显示卡、声卡等一系列器件组成的,体积大、功耗高。在嵌入式应用中对体积和功耗有严格限制,需要一种集cpu、显示和声卡于一身的芯片。韩国adchips公司适时推出了一款内嵌32位微处理器的多媒体芯片virgine g2,使得外部电路的设计变得非常简便。1 芯片结构 芯片的结构如图1所示,主要由cpu、2d图像加速器、音频引擎及周边外设组成。 1.1 32位微处理器eisc se3208 virgine g2芯片中内嵌的eisc cpu--se3208是该公司自主版权的32位cpu,内含2路4kb的cache,最大频率为45mhz。 可扩展的指令集计算机eisc(extendable instruction set computer)基于risc,使用精简指令集,指令运行为单时钟周期;但是它融合了cisc的优点,即代码密度非常高。它体积小,功能却很强大,非常适用于作为嵌入式的mcu。 eisc cpu使用定长的16位指令,操作数可以灵活扩展为16/32/64位,这是通过扩展寄存器和扩展指令实现的;eisc cpu的程序代码小,并且向上兼容,16/32/64位eisc cpu的代码可以通用,方便升级;eisc cpu全部使用c/c++语言进行开发。 1.2 基于3d的2d图形加速器 芯片的图像加速器最高工作在90mhz。crt控制器支持ntsc/pal及svga显示,还支持和外部电视信号的叠加,每行最大1024个像素,16bit彩色模式;支持纹理和实时贴图、透明和α(半透明)变换、图像旋转和放大/缩小等,如图2所示。 贴图性能:每秒处理580个对象。(测试条件:80mhz工作频率下,320×240显示模式,256×256的纹理尺寸。) 最大外接视频存储器(frame memory):8mb dram,最大外接纹理存储器(texture memory):8mb dram。贴图原理与windows的directx兼容,简介如下: ①在texture memory中(0x3800000~0x381ffff) 有128kb的队列,用于发出贴图命令包。用户开始将图片(可支持bmp的各种格式)放在texture memory中的剩余空间(稍小于8mb)。 ②每一个命令包有64b,因此共有2048个命令包,并且构成循环队列。 ③在frame momory中有前后缓冲区,用户设置即即可。 ④贴图的过程为:a.命令包1,2,3,4,5,……,将图片贴在后缓冲区中,可以有覆盖、透明、半透明方式,并可以缩放和旋转,由图像加速器自己合成一张整幅图像,这时并不显示。b.执行一条flip指令,前后缓冲区交换,图像显示出来,之前发出的命令包被舍弃。c.重复过程a,b,……,可实现动画的播放,过程与windows的directx兼容,熟悉windows动画的人使用起virgine g2来非常方便。 1.3 音频引擎 virgine g2支持8/16位最大44.1khz的pcm格式的声音,在windows中即为wav文件。声音播放原理如下: ①有32个通道可以同时播放。对应32个寄存器组(分布在0x4800000~0x48003ff中),指明声音的地址,播放方式。 ②声音数据一般放在frame memory或texture memory中除了图像外的剩余空间,最大可用4mb。 ③播放长声音文件时可以采用中断方式分段放。 ④每一个通道可以分别设置左右声道的音量,用2个通道就可以播放立体声,即一个通道播放左声道,另一个通道同时播放右声道。 ⑤每个通道可以设置音效,如回声、混响、panning等等。 1.4 其余外设 virgine g2可大大简化外部电路的设计。它含有32个3.3/5v兼容的i/o口、dram控制器、2路dma、4路定时器、2路串行通信器、看门狗、中断控制器、pwm、ppm(脉宽测量)、2路光笔接口等,并内建ram dac(直接输出r、g、b信号,该芯片也可以输出r、g、b数字量信号)和pll电路(外部晶振只用14.318mhz)。 由于图像加速器和音频引擎是独立工作的,cpu只负责对它们的控制,因此cpu在空闲的时间里还可以处理其它任务,如jpeg、mp3、mpeg-1以及其它测量控制任务等等。 1.5 开发手段<