求助:今天去笔试,有一道读程序题(verilog),大家帮忙看看

程序如下:
module TMI (address,ptr1,ptr2,b,control,count)
  input[7:0]           ptr1,ptr2;
  input[15:0]         address,b;
  input                  control;
  output[15:0]       count;
  parameter[7:0]   base=8'b10000000;
  wire[7:0]             offset1,offset2;
  wire[15:0]           addr1,addr2,count1,count2;
  assign  offset1=base-ptr1;
  assign  offset2=base-ptr2;
  assign  addr1=address-{8'h00,offset1};
  assign  addr2=address-{8'h00,offset2};
  assign  count1=addr1+b;
  assign  count2=addr2+b;
  assign  count=(control==1'b1)?count1:count2;
  end module;
这段程序要实现什么功能?

还有一个问题:逻辑综合的输入输出的描述形式
我也来说两句 查看全部回复

最新回复

  • wu.weihai (2008-10-23 19:08:23)

    晕  还有人拿这种程序做面试啊 代码这么不规范
  • lyfhsd (2008-10-23 22:11:51)

    确实 有些错误也太。。
  • cgc_good (2008-10-23 23:52:25)

    只懂VHDL呵呵
  • liu851104 (2008-10-24 00:00:45)

    assign  count=control?(address+b-{8'h00,base-ptr1}):(address+b-{8'h00,base-ptr2})
    就是上面的功能
    只不过你的代码比较长而已
  • urchin (2008-10-24 19:18:32)

    学习,学习
  • huangli_eda (2008-10-24 19:19:19)

    代码繁琐但不复杂,仔细看看就清楚啦
    同意楼上
  • baijin (2008-10-24 21:49:12)

    这不是中兴的一道笔试题么
  • urchin0424 (2008-10-25 10:54:08)

    看看,学习学习。
  • limingnefu (2008-10-25 10:56:46)

    这是无聊的题目,个人认为HDL的功能应该侧重在逻辑上,如果考算法,不如直接考C了!
  • ycgfpga (2008-10-25 16:19:39)

    这道题不是考算法,好像是要求把生成的RTL画出来,比较优缺点,还有一段程序。
    我也去参加中兴笔试了,这道题好像还是比较简单的
  • xjtu_zhanglei (2008-10-27 12:10:09)

    好象是个基址加变址的寻址方式
    然后再加一个地址选择