在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2985|回复: 4

[求助] 用verilog-ams语言写EEPROM浮栅管和控制管的模型

[复制链接]
发表于 2013-12-5 21:34:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
有偿付服务。
 楼主| 发表于 2013-12-5 21:37:08 | 显示全部楼层
也可以用什么软件交换
 楼主| 发表于 2013-12-8 04:43:06 | 显示全部楼层
`include "disciplines.vams"
`include "constants.vams"

module eeprom_block(wl, prog, bit_11_to_0, vs);
       
  inout   wl, prog, vs;
  inout   [11:0] bit_11_to_0;
  genvar  i, j;
  
  electrical wl, prog, bit_11_to_0, vs, gnd;
  electrical [11:0] fg;

  parameter integer mem_11 = 1 from [0:1];
  parameter integer mem_10 = 1 from [0:1];
  parameter integer mem_9  = 1 from [0:1];
  parameter integer mem_8  = 1 from [0:1];
  parameter integer mem_7  = 1 from [0:1];
  parameter integer mem_6  = 1 from [0:1];
  parameter integer mem_5  = 1 from [0:1];
  parameter integer mem_4  = 1 from [0:1];
  parameter integer mem_3  = 1 from [0:1];
  parameter integer mem_2  = 1 from [0:1];
  parameter integer mem_1  = 1 from [0:1];
  parameter integer mem_0  = 1 from [0:1];

  parameter real v_15 = 15;
  parameter real v_16 = 16;
  parameter real v_5  = 5;
  parameter real v_3  = 3;
  parameter real v_1  = 1;
  ground     gnd;

analog
  begin
    @(initial_step)
      begin
        V(fg[0])  <+ mem_0;
        V(fg[1])  <+ mem_1;
        V(fg[2])  <+ mem_2;
        V(fg[3])  <+ mem_3;
        V(fg[4])  <+ mem_4;
        V(fg[5])  <+ mem_5;
        V(fg[6])  <+ mem_6;
        V(fg[7])  <+ mem_7;
        V(fg[8])  <+ mem_8;
        V(fg[9])  <+ mem_9;
        V(fg[10])  <+ mem_10;
        V(fg[11])  <+ mem_11;
      end
    @(cross((V(wl)-v_16), +1)) begin
      if(V(wl) >= v_16 && V(prog) >= v_16 && V(vs) <= v_1)
        begin
          V(fg[0]) <+ 1;
          V(fg[1]) <+ 1;
          V(fg[2]) <+ 1;
          V(fg[3]) <+ 1;
          V(fg[4]) <+ 1;
          V(fg[5]) <+ 1;
          V(fg[6]) <+ 1;
          V(fg[7]) <+ 1;
          V(fg[8]) <+ 1;
          V(fg[9]) <+ 1;
          V(fg[10]) <+ 1;
          V(fg[11]) <+ 1;
        end
      else if(V(wl) >= v_16 && V(prog) <= v_1)
        begin
          for(i=11;i>=0;i=i-1)
            begin
               if(V(bit_11_to_0[i]) >= v_15)
                  begin
                    V(fg[i]) <+ 0;
                  end
            end
        end
      end

      if((V(wl)>= v_3) && (V(wl) <= v_5))
      begin
          for(j=11;j>=0;j=j-1)
            begin
              if(V(fg[i])==0)
                 begin
                 V((bit_11_to_0[i]),vs) <+ 0.3;
                 end
              else
                 begin
                 V((bit_11_to_0[i]),vs) <+ 2.8;
                 end
            end      
      end
      else
      begin
            V((bit_11_to_0[11]),vs) <+ 2.8;
            V((bit_11_to_0[10]),vs) <+ 2.8;
            V((bit_11_to_0[9]),vs) <+ 2.8;
            V((bit_11_to_0[8]),vs) <+ 2.8;
            V((bit_11_to_0[7]),vs) <+ 2.8;
            V((bit_11_to_0[6]),vs) <+ 2.8;
            V((bit_11_to_0[5]),vs) <+ 2.8;
            V((bit_11_to_0[4]),vs) <+ 2.8;
            V((bit_11_to_0[3]),vs) <+ 2.8;
            V((bit_11_to_0[2]),vs) <+ 2.8;
            V((bit_11_to_0[1]),vs) <+ 2.8;
            V((bit_11_to_0[0]),vs) <+ 2.8;
      end
  end
endmodule
 楼主| 发表于 2013-12-8 04:44:47 | 显示全部楼层
自己先写的如何修改?
发表于 2021-10-14 13:42:21 | 显示全部楼层
额,试试。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-2-26 23:18 , Processed in 0.020493 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表