载入中...

| 载入中...'s blog

2007-11-5 21:02:00

三分频程序设计及任意奇数分(频占空比50%)

实现一个3分频程序,程序如下:

library ieee;
use ieee.std_logic_1164.all;

entity fenpin3 is
port(clock:in std_logic;
      clk:out std_logic);
end;

architecture devider of fenpin3 is
signal counter:integer range 0 to 2;
signal temp1,temp2:std_logic;
……

By 94179411 | 阅读全文 | 回复 | 引用通告
2007-10-20 11:26:00
三种常用SoC片上总线的分析与比较   作者:未知   来源:电子设计信息网    点击数:103   更新时间:2007-8-21
嵌入式系统是当今计算机工业发展的一个热点。随着超大规模集成电路的迅速发展,半导体工业进入深亚微米时代,器件特征尺寸越来越小,芯片规模越来越大,可以在单芯片上集成上百万到数亿只晶体管。如此密集的集成度使我们现在能够在一小块芯片上把以前由CPU和若干I/O接口等数块芯片实现的功能集成起来,由单片集成电路构成功能强大的、完整的系统,这就是我们通常所说的片上系统SoC(System on Chip)。由于功能完整,SoC逐渐成为嵌入式系统发展的主流。

  SoC相比板上系统,具有许多优点:


  ① 充分利用IP技术,减少产品设计复杂性和开发成本,缩短产品开发的时间;


  ② 单芯片集成电路可以有效地降低系统功耗;


  ③ 减少芯片对外引脚数,简化系统加工的复杂性;



……
By 94179411 | 阅读全文 | 回复 | 引用通告
2007-10-18 19:26:00
  基本解释
  
    const是一个C语言的关键字,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的健壮性,另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一些帮助。
  虽然这听起来很简单,但实际上,const的使用也是c语言中一个比较微妙的地方,微妙在何处呢?请看下面几个问题。
  
    问题:const变量 & 常量
  
    为什么我象下面的例子一样用一个const变量来初始化数组,ANSI C的编译器会报告一个错误呢?
  
  
  
  const int n = 5;
  int a[n];
  
  
  
    答案与分析:
  
    1)、这个问题讨论的是“常量”与“只读变量”的区别。常量肯定是只读的,例如5, “abc”,等,肯定是只读的,因为程序中根本没有地方存放它的值,当然也就不能够去修改它。而“只读变量”则是在内存中开辟一个地方来存放它的值,只不过这个值由编译器限定不允许被修改。
……
By 94179411 | 阅读全文 | 回复 | 引用通告
2007-10-14 20:08:00

C语言中volatile的用法

   嵌入式编程中经常用到 volatile这个关键字,在网上查了下他的用法可以归结为以下两点:
 
一:告诉compiler不能做任何优化
   比如要往某一地址送两指令:  
   int   *ip   =...;   //设备地址
……
By 94179411 | 阅读全文 | 回复 | 引用通告
2007-9-25 10:25:00
倾情奉献我刚刚设计的简易祯同步提取电路,只用18个LE哦,我用epm1270仿真了一下,最高支持61MHz,没想到这么快,请各位高手给提一下意见,祯头是7位巴克码0100111x,第八位x任意,其实在我的设计中,第8位被用来作为命令/数据标志为,关于这个的设计,谁需要的话可以找我要
http://www.edires.net/bbs/topic.aspx?topicid=3326&page=65535
By 94179411 | 阅读全文 | 回复 | 引用通告
2007-9-22 14:22:00
这是我写的一个简单的带输入输出使能的8位串并变换VHDL程序,程序虽小但可以分析一些时钟歪斜和保持时间的问题,程序如下:
library ieee;
use ieee.std_logic_1164.all;
entity StoP is
port(clk,shift,en: in std_logic;        --en为串行输入使能
       y:out std_logic_vector(7 downto 0);
      oe:buffer std_logic);       --oe为并行输出使能
end ;
 
architecture a of StoP is
signal y_r:std_logic_vector(7 downto 0);
begin
   P1:process(clk)
   variable i :
……
By 94179411 | 阅读全文 | 回复 | 引用通告
2007-9-9 19:01:00
        批量修改一批小元件时,如需要修改R10~R25的属性,可以先选择这16个电阻,然后对齐,然后再以其中某一个的X或Y坐标作为查找Similar Objects的条件,就可以批量修改这16个电阻的属性了,当然,这是在布局之前,布局定下来以后就不能采用这种办法了。
        批量选择时,有人习惯于用鼠标框起来想要选择的一堆器件,但是这种办法有可能会把不想选择的器件给框进来,可惜的是protel没法像windows那样按住ctrl键取消选择单个对象,我的办法是首先把在被框区域里面其他对象lock住,然后再框或是选中就可以后,当然,这种办法还可以用来快速选择重叠器件中的一个。
……
By 94179411 | 阅读全文 | 回复 | 引用通告
2007-9-7 10:34:00
        所谓FIFO,从硬件的观点来看,就是一块数据内存。它有两个端口,一个用来写数据,就是将数据存入FIFO;另一个用来读数据,也就是将数据从FIFO当中取出。与FIFO操作相关的有两个指针,写指针指向要写的内存部分,读指针指向要读的内存部分。FIFO控制器通过外部的读写信号控制这两个指针移动,并由此产生FIFO空信号或满信号。
 
        用FPGA实现FIFO的话,一般而言,都是采用片内的双端口RAM作为FIFO的内存的实现形式。但是如果需要设计的FIFO深度和宽度不是很大,或者要在CPLD(没有内部RAM)实现简单的FIFO的话,就需要用LE来搭建了。
……
By 94179411 | 阅读全文 | 回复 | 引用通告
2007-8-31 10:26:00

Protel最新版本Altium Designer 6 (以下简称AD6.0) 增强了很多板级设计功能,这将大大增强对处理复杂板卡设计和高速数字信号的支持。同时,AD6.0能更加方便、快速地实现复杂板卡的PCB版图设计。新增亮点如下:

1、支持差分对

AD6.0支持在原理图和PCB中差分对布线功能。利用设计规则检查差分信号布线并具备交互式布线的能力。将差分信号设计扩展并集成到FPGA设计上,就可以直接映射到PCB板项目中的LVDS信号对。

2、支持动态网络分配

AD6.0可以支持对BGA器件逃溢布线后在多层PCB版图上的网络交换功能。此外,该功能还利用了AD6.0中FPGA与PCB设计的差分对交换模式。AD6.0实现了在PCB版图设计中,交换FPGA、无端口属性分立器件(如电阻、电容、电感等)及多重部件IC(如,多路运放IC等)的引脚网络分配。

3、支持BGA 逃溢布线


……
By 94179411 | 阅读全文 | 回复 | 引用通告
2007-8-29 20:16:00
0欧姆作用
1,在电路中没有任何功能,只是在PCB上为了调试方便或兼容设计等原因。
2,可以做跳线用,如果某段线路不用,直接不贴该电阻即可(不影响外观)
3,在匹配电路参数不确定的时候,以0欧姆代替,实际调试的时候,确定参数,再以具体数值的元件代替。
4,想测某部分电路的耗电流的时候,可以去掉0ohm电阻,接上电流表,这样方便测耗电流。
5,在布线时,如果实在布不过去了,也可以加一个0欧的电阻
6,在高频信号下,充当电感或电容。(与外部电路特性有关)电感用,主要是解决EMC问题。如地与地,电源和IC Pin间
7,单点接地(指保护接地、工作接地、直流接地在设备上相互分开,各自成为独立系统。)
8,熔丝作用
电感是储能元件,而磁珠是能量转换(消耗)器件。电感多用于电源滤波回路,侧重于抑止传导性干扰;磁珠多用于信号回路,主要用于EMI方面。磁珠用来吸收超高频信号,象一些RF电路,PLL,振荡电路,含超高频存储器电路(DDR,SDRAM,RAMBUS等)都需要在电源输入部分加磁珠,而电感是一种储能元件,用在LC振荡电路、中低频的滤波电路等,其应用频率范围很少超过50MHz。磁珠有很高的电阻率和磁导率,他等效于电阻和电感串联,但电阻值和电感值都随频率变化。
……
By 94179411 | 阅读全文 | 回复 | 引用通告
首页 上一页 下一页 尾页 页次:1/5页  10篇日志/页 转到:

日历

载入中...

公告

    载入中...

最新文章

载入中...

文章分类

载入中...

MY Favorite Blogs

最近评论

载入中...

最近留言

载入中...

信息

载入中...

登陆

载入中...