CN102025934B - 基于AXI总线的数字电视SoC的存储控制方法 - Google Patents

基于AXI总线的数字电视SoC的存储控制方法 Download PDF

Info

Publication number
CN102025934B
CN102025934B CN2010105096159A CN201010509615A CN102025934B CN 102025934 B CN102025934 B CN 102025934B CN 2010105096159 A CN2010105096159 A CN 2010105096159A CN 201010509615 A CN201010509615 A CN 201010509615A CN 102025934 B CN102025934 B CN 102025934B
Authority
CN
China
Prior art keywords
axi
fifo
data
bus
buffer memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2010105096159A
Other languages
English (en)
Other versions
CN102025934A (zh
Inventor
刘龙军
赵文哲
侯作勋
孙宏滨
葛晨阳
郑南宁
张晓明
梁巨昌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Jiaotong University
Original Assignee
Xian Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian Jiaotong University filed Critical Xian Jiaotong University
Priority to CN2010105096159A priority Critical patent/CN102025934B/zh
Publication of CN102025934A publication Critical patent/CN102025934A/zh
Application granted granted Critical
Publication of CN102025934B publication Critical patent/CN102025934B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Controls And Circuits For Display Device (AREA)

Abstract

基于AXI总线的数字电视SoC的存储控制方法,通过设计高效稳定的AXI总线控制系统将复合视频信号3D解码器、视频去隔行处理器和DDR1/2/3SDRAM控制器三者互联,能满足复合视频信号3D解码器和视频去隔行处理器实时存储大容量视频数据的需要,由此提高了总线带宽利用率以及DDR1/2/3SDRAM的存储效率。

Description

基于AXI总线的数字电视SoC的存储控制方法
技术领域
本发明属于一种显示处理的存储控制方法,具体涉及一种基于AXI总线的数字电视SoC的存储控制方法。
背景技术
现代的数字电视芯片的发展趋势是具有嵌入式处理器、复合视频解码器、数字视频解码器、视频去隔行处理器、画质提升处理器、网络接口以及USB接口等这样的部件的大规模片上系统SoC。大规模片上系统SoC带来集成度的提高也促进了设计规模的快速增长,而要实现这种大规模的芯片组件之间的连接与通信就需要遵循统一的片上总线互联标准,而目前主要用于面向高性能、高带宽且低延迟的片内总线为遵循AMBA3.0总线协议的AXI总线,加上对于数字电视SoC芯片的规模扩大,对视频数据处理的存储速度,容量要求越来越高,因此需要像DDR2 SDRAM或更高的存储系统如DDR3 SDRAM等来满足芯片的数据存储需求。
目前数字电视SoC芯片中用于数据控制的DDR1/2/3 SDRAM控制器是成熟的IP核,可以快速集成进大规模片上系统SoC芯片中,且通过此IP核控制其存储数据的DDR1/2/3 SDRAM,将这些存储数据用数据通信的方式在3D复合视频信号解码器和数字视频去隔行处理器这些IP核和DDR1/2/3 SDRAM之间进行相互数据存储和传输,这三个IP核通过AXI总线连接,但是现在这些IP核之间的通过数据通信实现数据存储的AXI总线的控制系统的控制方法,对于提高总线带宽以及满足数据存储方面的效率很低,主要是在满足复合视频信号3D解码器和视频去隔行处理器实时存储视频数据的需要方面,由此控制这些IP核之间的数据通信,满足数据存储的需求,提高总线带宽利用率以及DDR1/2/3SDRAM的存储效率是一个需要解决的重要问题。
发明内容
为了克服上述现有技术存在的不足,本发明的目的在于提供一种基于AXI总线的数字电视SoC的存储控制方法,通过设计高效稳定的AXI总线控制系统将复合视频信号3D解码器、视频去隔行处理器和DDR1/2/3 SDRAM控制器三者互联,能满足复合视频信号3D解码器和视频去隔行处理器实时存储视频数据的需要,由此提高了总线带宽利用率以及DDR1/2/3 SDRAM的存储效率。
为了达到上述目的,本发明所采用的技术方案是:
基于AXI总线的数字电视SoC的存储控制方法:
步骤1:在该SoC芯片的复合视频信号3D解码器TV_decoder中的第一AXI总线主接口AXI_master_1内设置数据处理模块1,以及在该总线主接口AXI_master_1内设置第一内部仲裁器Arbitrate_1,还有在该SoC芯片的视频去隔行处理器Poster中的第二AXI总线主接口AXI_master_2内设置信号处理模块2,以及在该总线主接口AXI_master_2内设置第二内部仲裁器Arbitrate_2,在该SoC芯片的AXI总线的控制系统中,该控制系统中的AXI总线互联器AXI_Interconnecter中加入四个先入先出FIFO缓存,分别为写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO,而该AXI总线互联器AXI_Interconnecter中的AXI内部仲裁器AXI_arbitrate内设置状态迁移模块3,另外在该SoC芯片的DDR1/2/3 SDRAM控制器DDR1/2/3 Controller中设置AXI总线从接口AXI_Slave;
步骤2:在12C总线控制系统12C_Man利用串行数据信号SDL和串行时钟信号SCL的控制作用下,将模拟CVBS信号/模拟S-Video信号通过模拟前端AFE转换为对应的数字CVBS信号/数字S-Video信号,随后将该数字CVBS信号/数字S-Video信号发送到复合视频信号3D解码器TV_decoder中,复合视频信号3D解码器TV_decoder先将数字CVBS信号/数字S-Video信号作为8位字符输入流I_DATA[7:0]传送入第一AXI总线主接口AXI_master_1内的数据处理模块1;
步骤3:通过第一AXI总线主接口AXI_master_1内的数据处理模块,首先将所述的8位字符输入流I_DATA[7:0]按照先后顺序将其每16组连续的8位字符构成一个128位的字长结构,从而转化为128位字输入流I_DATA[127:0],再由第一内部仲裁器Arbitrate_1控制数据处理模块1向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向数据处理模块1发送AXI总线就绪信号AXI_Ready,随后数据处理模块1将写命令WR_Cmd发送到AXI总线互联器AXI_Interconnecter中的写命令先入先出缓存WRcmd_FIFO内部,而128位字输入流I_DATA[127:0]及其对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的写数据先入先出缓存WR_FIFO内部,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块3判断出写命令先入先出缓存WRcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求写DDR1/2/3 SDRAM命令即mem_wreq,同时将写数据先入先出缓存WR_FIFO内部的AXI总线地址信号AXI_addr以及128位字输入流I_DATA[127:0]发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr将128位字输入流I_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址中;
步骤4:将128位字输入流I_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址后,由第一内部仲裁器Arbitrate_1控制数据处理模块1向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向数据处理模块1发送AXI总线就绪信号AXI_Ready,随后数据处理模块1将读命令RD_Cmd发送到AXI总线互联器AXI_Interconnecter中的读命令先入先出缓存RDcmd_FIFO内部,而对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内部,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块3判断出读命令先入先出缓存RDcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求读DDR1/2/3 SDRAM命令即mem_rreq,同时将读数据先入先出缓存RD_FIFO内部的AXI总线地址信号AXI_addr发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr,将128位字输入流I_DATA[127:0]从DDR1/2/3 SDRAM对应的存储地址中通过AXI总线从接口AXI_Slave发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内,再发送到第一AXI总线主接口AXI_master_1内的数据处理模块1,该数据处理模块1将所述的128位字输入流I_DATA[127:0]重新转换成为数字CVBS信号/数字S-Video信号,其形式为8位字符输入流I_DATA[7:0],
步骤5:经过复合视频信号3D解码器TV_decoder将该8位字符输入流I_DATA[7:0]解码为亮度信号Y1和色度信号UV1的隔行数字视频信号,并将该隔行数字视频信号发送到视频去隔行处理器Poster中,通过视频去隔行处理器Poster中的预写控制器Pre_wr先将包含亮度信号Y1和色度信号UV1的隔行数字视频信号两两组合为16位字,再按照先后顺序将其每8组连续的16位字符构成一个128位的字长结构,从而转化为128位字输出流O_DATA[127:0],并写入视频去隔行处理器Poster中的预处理先入先出缓存Pre_FIFO,随后通过视频去隔行处理器Poster中的预读控制器Pre_rd将128位字输出流O_DATA[127:0]读入第二AXI总线主接口AXI_master_2内,再由第二内部仲裁器Arbitrate_2控制信号处理模块2向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向信号处理模块发送AXI总线就绪信号AXI_Ready,随后信号处理模块将写命令WR_Cmd发送到AXI总线互联器AXI_Interconnecter中的写命令先入先出缓存WRcmd_FIFO内部,而128位字输出流O_DATA[127:0]及其对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的写数据先入先出缓存WR_FIFO内部,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块3判断出写命令先入先出缓存WRcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求写DDR1/2/3 SDRAM命令即mem_wreq,同时将写数据先入先出缓存WR_FIFO内部的AXI总线地址信号AXI_addr以及128位字输出流O_DATA[127:0]发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr将128位字输出流O_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址中;
步骤6:将128位字输出流O_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址后,由第二内部仲裁器Arbitrate_2控制信号处理模块2向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向信号处理模块2发送AXI总线就绪信号AXI_Ready,随后信号处理模块2将读命令RD_Cmd发送到AXI总线互联器AXI_Interconnecter中的读命令先入先出缓存RDcmd_FIFO内部,而对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内部,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块判断出读命令先入先出缓存RDcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求读DDR1/2/3 SDRAM命令即mem_rreq,同时将读数据先入先出缓存RD_FIFO内部的AXI总线地址信号AXI_addr发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr,将128位字输出流O_DATA[127:0]从DDR1/2/3 SDRAM对应的存储地址中通过AXI总线从接口AXI_Slave发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内,再发送到第二AXI总线主接口AXI_master_2内的信号处理模块2,该信号处理模块将所述的128位字输出流O_DATA[127:0]分解成奇场128位字输出流ODD_DATA[127:0]和偶场128位字输出流EVEN_DATA[127:0],分别分发给奇场后写控制器End_wr和偶场后写控制器Ends_wr,奇场后写控制器End_wr将奇场128位字输出流ODD_DATA[127:0]转化为奇场亮度8位字符流的ey[7:0]和奇场色度8位字符流的euv[7:0]并保存入奇场先入先出缓存End_FIFO,偶场后写控制器Ends_wr将偶场128位字输出流EVEN_DATA[127:0]转化为偶场亮度8位字符流的eys[7:0]和偶场色度8位字符流的euvs[7:0]并保存入偶场先入先出缓存Ends_FIFO,然后将放入奇场先入先出缓存End_FIFO的奇场亮度8位字符流的ey[7:0]和奇场色度8位字符流的euv[7:0],以及放入偶场先入先出缓存Ends_FIFO的偶场亮度8位字符流的eys[7:0]和偶场色度8位字符流的euvs[7:0]分别通过奇场后读控制器End_rd和偶场后读控制器Ends_rd输入视频去隔行处理器Poster中的去隔行模块DeInterlacing进行去隔行处理,得到一帧逐行亮度信号Yout和色度信号Uvout;
步骤7:将一帧逐行亮度信号Yout和色度信号Uvout送往所述的SoC芯片的输出模块Outputer,生成目标视频送往显示屏显示。
所述的AXI总线地址信号AXI_addr的地址格式和DDR1/2/3 SDRAM的存储地址的地址格式一致。
所述的写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO各自的先入先出数据结构都具有三个标记,三个标记为空指示标记FIFO_empty、满指示标记FIFO_full以及当前位置标示Pointer,分别指示所述的先入先出数据结构的尾部、头部以及当前数据存储的前端部位置4。
所述的AXI内部仲裁器AXI_arbitrate以轮询的方式对读命令先入先出缓存RDcmd_FIFO和写命令先入先出缓存WRcmd_FIFO进行判断。
本发明的基于AXI总线的数字电视SoC的存储控制方法,该方法采用了写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO的缓存结构,使得地址或数据的发送可以不相互影响,能满足复合视频信号3D解码器和视频去隔行处理器实时存储视频数据的需要,由此提高了AXI总线带宽的利用率,而所述的AXI总线地址信号AXI_addr的地址格式和DDR1/2/3 SDRAM的存储地址的地址格式一致,避免了不同地址间转换的操作,提高了DDR1/2/3 SDRAM的存储效率;加上写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO各自的先入先出数据结构都具有空指示标记FIFO_empty、满指示标记FIFO_full以及当前位置标示Pointer,更能保证读写数据的稳定性,最后所述的AXI内部仲裁器AXI_arbitrate以轮询的方式对读命令先入先出缓存RDcmd_FIFO和写命令先入先出缓存WRcmd_FIFO进行判断更能提高AXI总线带宽的利用率。
附图说明
图1是本发明的整体工作原理框图。
图2是本发明的AXI总线互联器、第一AXI总线主接口、第二AXI总线主接口、DDR1/2/3 SDRAM控制器以及DDR1/2/3 SDRAM的工作原理框图。
图3是本发明的所述的写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO的先入先出数据结构,其中带线条的方块代表有数据的缓存单元,没带线条的方块代表没有数据的缓存单元。
图4是第一AXI总线主接口的工作状态原理框图。
图5是第二AXI总线主接口的工作状态原理框图。
具体实施方式
下面结合附图和实施例对本发明作更详细的说明。
本实施例的基于AXI总线的数字电视SoC的存储控制方法:
步骤1:在该SoC芯片的复合视频信号3D解码器TV_decoder中的第一AXI总线主接口AXI_master_1内设置数据处理模块1如图1所示,以及在该总线主接口AXI_master_1内设置第一内部仲裁器Arbitrate_1如图4所示,还有在该SoC芯片的视频去隔行处理器Poster中的第二AXI总线主接口AXI_master_2内设置信号处理模块2如图1所示,以及在该总线主接口AXI_master_2内设置第二内部仲裁器Arbitrate_2如图5所示,另如图2所示,在该SoC芯片的AXI总线的控制系统中,该控制系统中的AXI总线互联器AXI_Interconnecter中加入四个先入先出FIFO缓存,分别为写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO,而该AXI总线互联器AXI_Interconnecter中的AXI内部仲裁器AXI_arbitrate内设置状态迁移模块3,另外在该SoC芯片的DDR1/2/3 SDRAM控制器DDR1/2/3 Controller中设置AXI总线从接口AXI_Slave如图1所示;
步骤2:如图1所示,在12C总线控制系统12C_Man利用串行数据信号SDL和串行时钟信号SCL的控制作用下,将模拟CVBS信号/模拟S-Video信号通过模拟前端AFE转换为对应的数字CVBS信号/数字S-Video信号,随后将该数字CVBS信号/数字S-Video信号发送到复合视频信号3D解码器TV_decoder中,复合视频信号3D解码器TV_decoder先将数字CVBS信号/数字S-Video信号作为8位字符输入流I_DATA[7:0]传送入第一AXI总线主接口AXI_master_1内的数据处理模块1;
步骤3:如图4所示,通过第一AXI总线主接口AXI_master_1内的数据处理模块,首先将所述的8位字符输入流I_DATA[7:0]按照先后顺序将其每16组连续的8位字符构成一个128位的字长结构,从而转化为128位字输入流I_DATA[127:0],再由第一内部仲裁器Arbitrate_1控制数据处理模块1向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向数据处理模块1发送AXI总线就绪信号AXI_Ready,随后数据处理模块1将写命令WR_Cmd发送到AXI总线互联器AXI_Interconnecter中的写命令先入先出缓存WRcmd_FIFO内部,而128位字输入流I_DATA[127:0]及其对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的写数据先入先出缓存WR_FIFO内部,如图2所示,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块3判断出写命令先入先出缓存WRcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求写DDR1/2/3 SDRAM命令即mem_wreq,同时将写数据先入先出缓存WR_FIFO内部的AXI总线地址信号AXI_addr以及128位字输入流I_DATA[127:0]发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr将128位字输入流I_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址中;
步骤4:将128位字输入流I_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址后,如图4所示,由第一内部仲裁器Arbitrate_1控制数据处理模块1向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向数据处理模块1发送AXI总线就绪信号AXI_Ready,随后数据处理模块1将读命令RD_Cmd发送到AXI总线互联器AXI_Interconnecter中的读命令先入先出缓存RDcmd_FIFO内部,如图2所示,而对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内部,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块3判断出读命令先入先出缓存RDcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求读DDR1/2/3 SDRAM命令即mem_rreq,同时将读数据先入先出缓存RD_FIFO内部的AXI总线地址信号AXI_addr发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr,将128位字输入流I_DATA[127:0]从DDR1/2/3SDRAM对应的存储地址中通过AXI总线从接口AXI_Slave发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内,再发送到第一AXI总线主接口AXI_master_1内的数据处理模块1,该数据处理模块1将所述的128位字输入流I_DATA[127:0]重新转换成为数字CVBS信号/数字S-Video信号,其形式为8位字符输入流I_DATA[7:0],
步骤5:如图1所示,经过复合视频信号3D解码器TV_decoder将该8位字符输入流I_DATA[7:0]解码为亮度信号Y1和色度信号UV1的隔行数字视频信号,并将该隔行数字视频信号发送到视频去隔行处理器Poster中,如图5所示,通过视频去隔行处理器Poster中的预写控制器Pre_wr先将包含亮度信号Y1和色度信号UV1的隔行数字视频信号两两组合为16位字,再按照先后顺序将其每8组连续的16位字符构成一个128位的字长结构,从而转化为128位字输出流O_DATA[127:0],并写入视频去隔行处理器Poster中的预处理先入先出缓存Pre_FIFO,随后通过视频去隔行处理器Poster中的预读控制器Pre_rd将128位字输出流O_DATA[127:0]读入第二AXI总线主接口AXI_master_2内,再由第二内部仲裁器Arbitrate_2控制信号处理模块2向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向信号处理模块发送AXI总线就绪信号AXI_Ready,随后信号处理模块将写命令WR_Cmd发送到AXI总线互联器AXI_Interconnecter中的写命令先入先出缓存WRcmd_FIFO内部,而128位字输出流O_DATA[127:0]及其对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的写数据先入先出缓存WR_FIFO内部,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块3判断出写命令先入先出缓存WRcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求写DDR1/2/3 SDRAM命令即mem_wreq,同时将写数据先入先出缓存WR_FIFO内部的AXI总线地址信号AXI_addr以及128位字输出流O_DATA[127:0]发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr将128位字输出流O_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址中如图2所示;
步骤6:如图5所示,将128位字输出流O_DATA[127:0]写入DDR1/2/3SDRAM对应的存储地址后,由第二内部仲裁器Arbitrate_2控制信号处理模块2向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向信号处理模块2发送AXI总线就绪信号AXI_Ready,随后信号处理模块2将读命令RD_Cmd发送到AXI总线互联器AXI_Interconnecter中的读命令先入先出缓存RDcmd_FIFO内部,而对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内部,如图2所示,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块判断出读命令先入先出缓存RDcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求读DDR1/2/3 SDRAM命令即mem_rreq,同时将读数据先入先出缓存RD_FIFO内部的AXI总线地址信号AXI_addr发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr,将128位字输出流O_DATA[127:0]从DDR1/2/3SDRAM对应的存储地址中通过AXI总线从接口AXI_Slave发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内,如图5所示,再发送到第二AXI总线主接口AXI_master_2内的信号处理模块2,该信号处理模块2将所述的128位字输出流O_DATA[127:0]分解成奇场128位字输出流ODD_DATA[127:0]和偶场128位字输出流EVEN_DATA[127:0],分别分发给奇场后写控制器End_wr和偶场后写控制器Ends_wr,奇场后写控制器End_wr将奇场128位字输出流ODD_DATA[127:0]转化为奇场亮度8位字符流的ey[7:0]和奇场色度8位字符流的euv[7:0]并保存入奇场先入先出缓存End_FIFO,偶场后写控制器Ends_wr将偶场128位字输出流EVEN_DATA[127:0]转化为偶场亮度8位字符流的eys[7:0]和偶场色度8位字符流的euvs[7:0]并保存入偶场先入先出缓存Ends_FIFO,然后将放入奇场先入先出缓存End_FIFO的奇场亮度8位字符流的ey[7:0]和奇场色度8位字符流的euv[7:0],以及放入偶场先入先出缓存Ends_FIFO的偶场亮度8位字符流的eys[7:0]和偶场色度8位字符流的euvs[7:0]分别通过奇场后读控制器End_rd和偶场后读控制器Ends_rd输入视频去隔行处理器Poster中的去隔行模块DeInterlacing进行去隔行处理,得到一帧逐行亮度信号Yout和色度信号Uvout;
步骤7:将一帧逐行亮度信号Yout和色度信号Uvout送往所述的SoC芯片的输出模块Outputer,生成目标视频送往显示屏显示如图1所示。
所述的AXI总线地址信号AXI_addr的地址格式和DDR1/2/3 SDRAM的存储地址的地址格式一致。
如图3所示,所述的写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO各自的先入先出数据结构都具有三个标记,三个标记为空指示标记FIFO_empty、满指示标记FIFO_full以及当前位置标示Pointer,分别指示所述的先入先出数据结构的尾部、头部以及当前数据存储的前端部位置4。
所述的AXI内部仲裁器AXI_arbitrate以轮询的方式对读命令先入先出缓存RDcmd_FIFO和写命令先入先出缓存WRcmd_FIFO进行判断。
本发明的基于AXI总线的数字电视SoC的存储控制方法,该方法采用了写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO的缓存结构,使得地址或数据的发送可以不相互影响,能满足复合视频信号3D解码器和视频去隔行处理器实时存储视频数据的需要,由此提高了AXI总线带宽的利用率,而所述的AXI总线地址信号AXI_addr的地址格式和DDR1/2/3 SDRAM的存储地址的地址格式一致,避免了不同地址间转换的操作,提高了DDR1/2/3 SDRAM的存储效率;加上写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO各自的先入先出数据结构都具有空指示标记FIFO_empty、满指示标记FIFO_full以及当前位置标示Pointer,更能保证读写数据的稳定性,最后所述的AXI内部仲裁器AXI_arbitrate以轮询的方式对读命令先入先出缓存RDcmd_FIFO和写命令先入先出缓存WRcmd_FIFO进行判断更能提高AXI总线带宽的利用率。

Claims (4)

1.基于AXI总线的数字电视SoC芯片的存储控制方法,其特征在于:
步骤1:在该SoC芯片的复合视频信号3D解码器TV_decoder中的第一AXI总线主接口AXI_master_1内设置数据处理模块(1),以及在该总线主接口AXI_master_1内设置第一内部仲裁器Arbitrate_1,还有在该SoC芯片的视频去隔行处理器Poster中的第二AXI总线主接口AXI_master_2内设置信号处理模块(2),以及在该总线主接口AXI_master_2内设置第二内部仲裁器Arbitrate_2,在该SoC芯片的AXI总线的控制系统中,该控制系统中的AXI总线互联器AXI_Interconnecter中加入四个先入先出FIFO缓存,分别为写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO,而该AXI总线互联器AXI_Interconnecter中的AXI内部仲裁器AXI_arbitrate内设置状态迁移模块(3),另外在该SoC芯片的DDR1/2/3 SDRAM控制器DDR1/2/3 Controller中设置AXI总线从接口AXI_Slave;
步骤2:在12C总线控制系统12C_Man利用串行数据信号SDL和串行时钟信号SCL的控制作用下,将模拟CVBS信号/模拟S-Video信号通过模拟前端AFE转换为对应的数字CVBS信号/数字S-Video信号,随后将该数字CVBS信号/数字S-Video信号发送到复合视频信号3D解码器TV_decoder中,复合视频信号3D解码器TV_decoder先将数字CVBS信号/数字S-Video信号作为8位字符输入流I_DATA[7:0]传送入第一AXI总线主接口AXI_master_1内的数据处理模块(1);
步骤3:通过第一AXI总线主接口AXI_master_1内的数据处理模块,首先将所述的8位字符输入流I_DATA[7:0]按照先后顺序将其每16组连续的8位字符构成一个128位的字长结构,从而转化为128位字输入流I_DATA[127:0],再由第一内部仲裁器Arbitrate_1控制数据处理模块(1)向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向数据处理模块(1)发送AXI总线就绪信号AXI_Ready,随后数据处理模块(1)将写命令WR_Cmd发送到AXI总线互联器AXI_Interconnecter中的写命令先入先出缓存WRcmd_FIFO内部,而128位字输入流I_DATA[127:0]及其对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的写数据先入先出缓存WR_FIFO内部,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块(3)判断出写命令先入先出缓存WRcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求写DDR1/2/3 SDRAM命令即mem_wreq,同时将写数据先入先出缓存WR_FIFO内部的AXI总线地址信号AXI_addr以及128位字输入流I_DATA[127:0]发送到AXI总线从接口AXI_Slave,通过DDR1/2/3SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr将128位字输入流I_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址中;
步骤4:将128位字输入流I_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址后,由第一内部仲裁器Arbitrate_1控制数据处理模块(1)向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向数据处理模块1发送AXI总线就绪信号AXI_Ready,随后数据处理模块(1)将读命令RD_Cmd发送到AXI总线互联器AXI_Interconnecter中的读命令先入先出缓存RDcmd_FIFO内部,而对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内部,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块(3)判断出读命令先入先出缓存RDcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求读DDR1/2/3 SDRAM命令即mem_rreq,同时将读数据先入先出缓存RD_FIFO内部的AXI总线地址信号AXI_addr发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr,将128位字输入流I_DATA[127:0]从DDR1/2/3 SDRAM对应的存储地址中通过AXI总线从接口AXI_Slave发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内,再发送到第一AXI总线主接口AXI_master_1内的数据处理模块(1),该数据处理模块(1)将所述的128位字输入流I_DATA[127:0]重新转换成为数字CVBS信号/数字S-Video信号,其形式为8位字符输入流I_DATA[7:0],
步骤5:经过复合视频信号3D解码器TV_decoder将该8位字符输入流I_DATA[7:0]解码为亮度信号Y1和色度信号UV1的隔行数字视频信号,并将该隔行数字视频信号发送到视频去隔行处理器Poster中,通过视频去隔行处理器Poster中的预写控制器Pre_wr先将包含亮度信号Y1和色度信号UV1的隔行数字视频信号两两组合为16位字,再按照先后顺序将其每8组连续的16位字符构成一个128位的字长结构,从而转化为128位字输出流O_DATA[127:0],并写入视频去隔行处理器Poster中的预处理先入先出缓存Pre_FIFO,随后通过视频去隔行处理器Poster中的预读控制器Pre_rd将128位字输出流O_DATA[127:0]读入第二AXI总线主接口AXI_master_2内,再由第二内部仲裁器Arbitrate_2控制信号处理模块(2)向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向信号处理模块发送AXI总线就绪信号AXI_Ready,随后信号处理模块将写命令WR_Cmd发送到AXI总线互联器AXI_Interconnecter中的写命令先入先出缓存WRcmd_FIFO内部,而128位字输出流O_DATA[127:0]及其对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的写数据先入先出缓存WR_FIFO内部,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块(3)判断出写命令先入先出缓存WRcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求写DDR1/2/3 SDRAM命令即mem_wreq,同时将写数据先入先出缓存WR_FIFO内部的AXI总线地址信号AXI_addr以及128位字输出流O_DATA[127:0]发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr将128位字输出流O_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址中;
步骤6:将128位字输出流O_DATA[127:0]写入DDR1/2/3 SDRAM对应的存储地址后,由第二内部仲裁器Arbitrate_2控制信号处理模块(2)向AXI总线互联器AXI_Interconnecter发送AXI总线有效探询命令AXI_Valid,如果AXI总线空闲,将会通过AXI总线互联器AXI_Interconnecter向信号处理模块(2)发送AXI总线就绪信号AXI_Ready,随后信号处理模块(2)将读命令RD_Cmd发送到AXI总线互联器AXI_Interconnecter中的读命令先入先出缓存RDcmd_FIFO内部,而对应的AXI总线地址信号AXI_addr发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内部,随后AXI内部仲裁器AXI_arbitrate内的状态迁移模块判断出读命令先入先出缓存RDcmd_FIFO内部为非空,就向DDR1/2/3 SDRAM控制器中的AXI总线从接口AXI_Slave发送要求读DDR1/2/3 SDRAM命令即mem_rreq,同时将读数据先入先出缓存RD_FIFO内部的AXI总线地址信号AXI_addr发送到AXI总线从接口AXI_Slave,通过DDR1/2/3 SDRAM控制器DDR1/2/3 Controller按照AXI总线地址信号AXI_addr,将128位字输出流O_DATA[127:0]从DDR1/2/3SDRAM对应的存储地址中通过AXI总线从接口AXI_Slave发送到AXI总线互联器AXI_Interconnecter中的读数据先入先出缓存RD_FIFO内,再发送到第二AXI总线主接口AXI_master_2内的信号处理模块(2),该信号处理模块将所述的128位字输出流O_DATA[127:0]分解成奇场128位字输出流ODD_DATA[127:0]和偶场128位字输出流EVEN_DATA[127:0],分别分发给奇场后写控制器End_wr和偶场后写控制器Ends_wr,奇场后写控制器End_wr将奇场128位字输出流ODD_DATA[127:0]转化为奇场亮度8位字符流的ey[7:0]和奇场色度8位字符流的euv[7:0]并保存入奇场先入先出缓存End_FIFO,偶场后写控制器Ends_wr将偶场128位字输出流EVEN_DATA[127:0]转化为偶场亮度8位字符流的eys[7:0]和偶场色度8位字符流的euvs[7:0]并保存入偶场先入先出缓存Ends_FIFO,然后将放入奇场先入先出缓存End_FIFO的奇场亮度8位字符流的ey[7:0]和奇场色度8位字符流的euv[7:0],以及放入偶场先入先出缓存Ends_FIFO的偶场亮度8位字符流的eys[7:0]和偶场色度8位字符流的euvs[7:0]分别通过奇场后读控制器End_rd和偶场后读控制器Ends_rd输入视频去隔行处理器Poster中的去隔行模块DeInterlacing进行去隔行处理,得到一帧逐行亮度信号Yout和色度信号Uvout;
步骤7:将一帧逐行亮度信号Yout和色度信号Uvout送往所述的SoC芯片的输出模块Outputer,生成目标视频送往显示屏显示。
2.根据权利要求1所述的基于AXI总线的数字电视SoC芯片的存储控制方法,其特征在于:所述的AXI总线地址信号AXI_addr的地址格式和DDR1/2/3SDRAM的存储地址的地址格式一致。
3.根据权利要求1或权利要求2所述的基于AXI总线的数字电视SoC芯片的存储控制方法,其特征在于:所述的写命令先入先出缓存WRcmd_FIFO、写数据先入先出缓存WR_FIFO、读命令先入先出缓存RDcmd_FIFO以及读数据先入先出缓存RD_FIFO各自的先入先出数据结构都具有三个标记,三个标记为空指示标记FIFO_empty、满指示标记FIFO_full以及当前位置标示Pointer,分别指示所述的先入先出数据结构的尾部、头部以及当前数据存储的前端部位置(4)。
4.根据权利要求1或权利要求2所述的基于AXI总线的数字电视SoC芯片的存储控制方法,其特征在于:所述的AXI内部仲裁器AXI_arbitrate以轮询的方式对读命令先入先出缓存RDcmd_FIFO和写命令先入先出缓存WRcmd_FIFO进行判断。
CN2010105096159A 2010-10-15 2010-10-15 基于AXI总线的数字电视SoC的存储控制方法 Expired - Fee Related CN102025934B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010105096159A CN102025934B (zh) 2010-10-15 2010-10-15 基于AXI总线的数字电视SoC的存储控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010105096159A CN102025934B (zh) 2010-10-15 2010-10-15 基于AXI总线的数字电视SoC的存储控制方法

Publications (2)

Publication Number Publication Date
CN102025934A CN102025934A (zh) 2011-04-20
CN102025934B true CN102025934B (zh) 2012-01-11

Family

ID=43866713

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010105096159A Expired - Fee Related CN102025934B (zh) 2010-10-15 2010-10-15 基于AXI总线的数字电视SoC的存储控制方法

Country Status (1)

Country Link
CN (1) CN102025934B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103077136B (zh) * 2011-10-25 2017-07-14 广东新岸线计算机系统芯片有限公司 一种axi总线内写入数据的方法和设备
CN102497514B (zh) * 2011-12-15 2013-09-04 中国科学院自动化研究所 一种三通道视频转发设备和转发方法
CN102609380B (zh) * 2012-02-14 2014-09-24 福州瑞芯微电子有限公司 基于axi总线的sdram控制器写数据快速响应方法
CN102622979B (zh) * 2012-03-13 2013-09-18 东南大学 一种lcd控制器及其显示控制方法
US9075952B2 (en) * 2013-01-17 2015-07-07 Intel Corporation Controlling bandwidth allocations in a system on a chip (SoC)
CN104281548A (zh) * 2013-07-03 2015-01-14 炬芯(珠海)科技有限公司 一种基于axi总线传输数据的方法、装置及系统
CN103605625B (zh) * 2013-11-29 2016-04-06 山东大学 基于AXI总线的Nor Flash芯片的控制方法
CN106200653B (zh) * 2016-10-08 2019-11-19 中船航海科技有限责任公司 一种船用航迹自动控制装置
CN107472044A (zh) * 2016-12-21 2017-12-15 宝沃汽车(中国)有限公司 电池信息的存储方法、系统及车辆
CN108664335B (zh) * 2017-04-01 2020-06-30 北京忆芯科技有限公司 通过代理进行队列通信的方法与装置
CN109412914B (zh) * 2018-08-31 2021-07-13 南京理工大学 流数据与axi接口通信装置
CN110636219B (zh) * 2019-09-03 2020-12-01 北京三快在线科技有限公司 一种视频数据流的传输方法及装置
CN117009276B (zh) * 2023-06-27 2024-06-25 进迭时空(珠海)科技有限公司 一种基于axi总线的信号压缩传输的方法、装置及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1697482A (zh) * 2005-06-01 2005-11-16 杭州晶图微芯技术有限公司 数字电视音视频解码系统芯片
CN101324869B (zh) * 2008-07-03 2010-04-14 北京中星微电子有限公司 一种基于axi总线的多路复用器

Also Published As

Publication number Publication date
CN102025934A (zh) 2011-04-20

Similar Documents

Publication Publication Date Title
CN102025934B (zh) 基于AXI总线的数字电视SoC的存储控制方法
CN100576893C (zh) 一种集成于视频处理芯片的图形osd控制器
CN101516015B (zh) 多路视频数据采集处理和传输的方法
CN102193865B (zh) 存储系统、存储方法和使用其的终端
CN102075758B (zh) 基于soc的mjpeg视频编解码系统及其方法
CN103702060A (zh) 超高清显示装置及视频信号转换方法
CN109714621A (zh) 一种时序可配置的多路动态视频模拟方法及其处理系统
CN104717485A (zh) 一种基于fpga的vga接口裸眼3d显示系统
CN103841359A (zh) 一种视频多画面合成方法、装置和系统
CN104038719A (zh) 一种基于视频帧的超高清视频显示系统及方法
CN102708280A (zh) 一种图像显示方法及设备
CN109587421B (zh) 一种hd-sdi/3g-sdi收发及实时画中画切换输出处理方法
CN108134912B (zh) 一种视频流转换方法
CN103019645A (zh) Ccd信号处理电路高速数据流仲裁控制方法
CN104469241B (zh) 一种实现视频帧率变换的装置
CN201444681U (zh) 全高清3d高帧率高速视频信号缓冲存储器
CN203522918U (zh) 一种hdmi转pcie的采集卡
CN102576301B (zh) 包括fifo存储器的接口连接电路
CN102541796B (zh) 电子装置
CN102497514A (zh) 一种三通道视频转发设备和转发方法
CN211860348U (zh) 一种基于信号调理电路的高清视频采集及远程监控系统
CN214070023U (zh) 一种长线传输、多路输出视频信号转换器
CN203722733U (zh) 图像格式转换器
CN204231583U (zh) 一种可同步、异步控制播放的led显示屏
CN103745681A (zh) 一种基于综合可编程器件的图形发生器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120111

Termination date: 20141015

EXPY Termination of patent right or utility model