亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? can_registers.v

?? 主要是說明can總線協(xié)議使用fpga的ip核實現(xiàn)
?? V
?? 第 1 頁 / 共 3 頁
字號:
/* End: Tx data registers */reg           tx_successful_q;reg           overrun_q;reg           overrun_status;reg           transmission_complete;reg           transmit_buffer_status_q;reg           receive_buffer_status;reg           error_status_q;reg           node_bus_off_q;reg           node_error_passive_q;reg           transmit_buffer_status;reg           single_shot_transmission;reg           self_rx_request;reg           irq_n;// Some interrupts exist in basic mode and in extended mode. Since they are in different registers they need to be multiplexed.wire          data_overrun_irq_en;wire          error_warning_irq_en;wire          transmit_irq_en;wire          receive_irq_en;wire    [7:0] irq_reg;wire          irq;wire we_mode                  = cs & we & (addr == 8'd0);wire we_command               = cs & we & (addr == 8'd1);wire we_bus_timing_0          = cs & we & (addr == 8'd6) & reset_mode;wire we_bus_timing_1          = cs & we & (addr == 8'd7) & reset_mode;wire we_clock_divider_low     = cs & we & (addr == 8'd31);wire we_clock_divider_hi      = we_clock_divider_low & reset_mode;wire read = cs & (~we);wire read_irq_reg = read & (addr == 8'd3);assign read_arbitration_lost_capture_reg = read & extended_mode & (addr == 8'd11);assign read_error_code_capture_reg = read & extended_mode & (addr == 8'd12);/* This section is for BASIC and EXTENDED mode */wire we_acceptance_code_0       = cs & we &   reset_mode  & ((~extended_mode) & (addr == 8'd4)  | extended_mode & (addr == 8'd16));wire we_acceptance_mask_0       = cs & we &   reset_mode  & ((~extended_mode) & (addr == 8'd5)  | extended_mode & (addr == 8'd20));wire we_tx_data_0               = cs & we & (~reset_mode) & ((~extended_mode) & (addr == 8'd10) | extended_mode & (addr == 8'd16)) & transmit_buffer_status;wire we_tx_data_1               = cs & we & (~reset_mode) & ((~extended_mode) & (addr == 8'd11) | extended_mode & (addr == 8'd17)) & transmit_buffer_status;wire we_tx_data_2               = cs & we & (~reset_mode) & ((~extended_mode) & (addr == 8'd12) | extended_mode & (addr == 8'd18)) & transmit_buffer_status;wire we_tx_data_3               = cs & we & (~reset_mode) & ((~extended_mode) & (addr == 8'd13) | extended_mode & (addr == 8'd19)) & transmit_buffer_status;wire we_tx_data_4               = cs & we & (~reset_mode) & ((~extended_mode) & (addr == 8'd14) | extended_mode & (addr == 8'd20)) & transmit_buffer_status;wire we_tx_data_5               = cs & we & (~reset_mode) & ((~extended_mode) & (addr == 8'd15) | extended_mode & (addr == 8'd21)) & transmit_buffer_status;wire we_tx_data_6               = cs & we & (~reset_mode) & ((~extended_mode) & (addr == 8'd16) | extended_mode & (addr == 8'd22)) & transmit_buffer_status;wire we_tx_data_7               = cs & we & (~reset_mode) & ((~extended_mode) & (addr == 8'd17) | extended_mode & (addr == 8'd23)) & transmit_buffer_status;wire we_tx_data_8               = cs & we & (~reset_mode) & ((~extended_mode) & (addr == 8'd18) | extended_mode & (addr == 8'd24)) & transmit_buffer_status;wire we_tx_data_9               = cs & we & (~reset_mode) & ((~extended_mode) & (addr == 8'd19) | extended_mode & (addr == 8'd25)) & transmit_buffer_status;wire we_tx_data_10              = cs & we & (~reset_mode) & (                                     extended_mode & (addr == 8'd26)) & transmit_buffer_status;wire we_tx_data_11              = cs & we & (~reset_mode) & (                                     extended_mode & (addr == 8'd27)) & transmit_buffer_status;wire we_tx_data_12              = cs & we & (~reset_mode) & (                                     extended_mode & (addr == 8'd28)) & transmit_buffer_status;/* End: This section is for BASIC and EXTENDED mode *//* This section is for EXTENDED mode */wire   we_interrupt_enable      = cs & we & (addr == 8'd4)  & extended_mode;wire   we_error_warning_limit   = cs & we & (addr == 8'd13) & reset_mode & extended_mode;assign we_rx_err_cnt            = cs & we & (addr == 8'd14) & reset_mode & extended_mode;assign we_tx_err_cnt            = cs & we & (addr == 8'd15) & reset_mode & extended_mode;wire   we_acceptance_code_1     = cs & we & (addr == 8'd17) & reset_mode & extended_mode;wire   we_acceptance_code_2     = cs & we & (addr == 8'd18) & reset_mode & extended_mode;wire   we_acceptance_code_3     = cs & we & (addr == 8'd19) & reset_mode & extended_mode;wire   we_acceptance_mask_1     = cs & we & (addr == 8'd21) & reset_mode & extended_mode;wire   we_acceptance_mask_2     = cs & we & (addr == 8'd22) & reset_mode & extended_mode;wire   we_acceptance_mask_3     = cs & we & (addr == 8'd23) & reset_mode & extended_mode;/* End: This section is for EXTENDED mode */always @ (posedge clk)begin  tx_successful_q           <=#Tp tx_successful;  overrun_q                 <=#Tp overrun;  transmit_buffer_status_q  <=#Tp transmit_buffer_status;  error_status_q            <=#Tp error_status;  node_bus_off_q            <=#Tp node_bus_off;  node_error_passive_q      <=#Tp node_error_passive;end/* Mode register */wire   [0:0] mode;wire   [4:1] mode_basic;wire   [3:1] mode_ext;wire         receive_irq_en_basic;wire         transmit_irq_en_basic;wire         error_irq_en_basic;wire         overrun_irq_en_basic;can_register_asyn_syn #(1, 1'h1) MODE_REG0( .data_in(data_in[0]),  .data_out(mode[0]),  .we(we_mode),  .clk(clk),  .rst(rst),  .rst_sync(set_reset_mode));can_register_asyn #(4, 0) MODE_REG_BASIC( .data_in(data_in[4:1]),  .data_out(mode_basic[4:1]),  .we(we_mode),  .clk(clk),  .rst(rst));can_register_asyn #(3, 0) MODE_REG_EXT( .data_in(data_in[3:1]),  .data_out(mode_ext[3:1]),  .we(we_mode & reset_mode),  .clk(clk),  .rst(rst));assign reset_mode             = mode[0];assign listen_only_mode       = extended_mode & mode_ext[1];assign self_test_mode         = extended_mode & mode_ext[2];assign acceptance_filter_mode = extended_mode & mode_ext[3];assign receive_irq_en_basic  = mode_basic[1];assign transmit_irq_en_basic = mode_basic[2];assign error_irq_en_basic    = mode_basic[3];assign overrun_irq_en_basic  = mode_basic[4];/* End Mode register *//* Command register */wire   [4:0] command;can_register_asyn_syn #(1, 1'h0) COMMAND_REG0( .data_in(data_in[0]),  .data_out(command[0]),  .we(we_command),  .clk(clk),  .rst(rst),  .rst_sync(command[0] & sample_point | reset_mode));can_register_asyn_syn #(1, 1'h0) COMMAND_REG1( .data_in(data_in[1]),  .data_out(command[1]),  .we(we_command),  .clk(clk),  .rst(rst),  .rst_sync(sample_point & (tx_request | (abort_tx & ~transmitting)) | reset_mode));can_register_asyn_syn #(2, 2'h0) COMMAND_REG( .data_in(data_in[3:2]),  .data_out(command[3:2]),  .we(we_command),  .clk(clk),  .rst(rst),  .rst_sync(|command[3:2] | reset_mode));can_register_asyn_syn #(1, 1'h0) COMMAND_REG4( .data_in(data_in[4]),  .data_out(command[4]),  .we(we_command),  .clk(clk),  .rst(rst),  .rst_sync(command[4] & sample_point | reset_mode));always @ (posedge clk or posedge rst)begin  if (rst)    self_rx_request <= 1'b0;  else if (command[4] & (~command[0]))    self_rx_request <=#Tp 1'b1;  else if ((~tx_state) & tx_state_q)    self_rx_request <=#Tp 1'b0;endassign clear_data_overrun = command[3];assign release_buffer = command[2];assign tx_request = command[0] | command[4];assign abort_tx = command[1] & (~tx_request);always @ (posedge clk or posedge rst)begin  if (rst)    single_shot_transmission <= 1'b0;  else if (tx_request & command[1] & sample_point)    single_shot_transmission <=#Tp 1'b1;  else if ((~tx_state) & tx_state_q)    single_shot_transmission <=#Tp 1'b0;end/*can_register_asyn_syn #(1, 1'h0) COMMAND_REG_OVERLOAD  // Uncomment this to enable overload requests !!!( .data_in(data_in[5]),  .data_out(overload_request),  .we(we_command),  .clk(clk),  .rst(rst),  .rst_sync(overload_frame & ~overload_frame_q));reg           overload_frame_q;always @ (posedge clk or posedge rst)begin  if (rst)    overload_frame_q <= 1'b0;  else    overload_frame_q <=#Tp overload_frame;end*/assign overload_request = 0;  // Overload requests are not supported, yet !!!/* End Command register *//* Status register */wire   [7:0] status;assign status[7] = node_bus_off;assign status[6] = error_status;assign status[5] = transmit_status;assign status[4] = receive_status;assign status[3] = transmission_complete;assign status[2] = transmit_buffer_status;assign status[1] = overrun_status;assign status[0] = receive_buffer_status;always @ (posedge clk or posedge rst)begin  if (rst)    transmission_complete <= 1'b1;  else if (tx_successful & (~tx_successful_q) | abort_tx)    transmission_complete <=#Tp 1'b1;  else if (tx_request)    transmission_complete <=#Tp 1'b0;endalways @ (posedge clk or posedge rst)begin  if (rst)    transmit_buffer_status <= 1'b1;  else if (tx_request)    transmit_buffer_status <=#Tp 1'b0;  else if (reset_mode || !need_to_tx)    transmit_buffer_status <=#Tp 1'b1;endalways @ (posedge clk or posedge rst)begin  if (rst)    overrun_status <= 1'b0;  else if (overrun & (~overrun_q))    overrun_status <=#Tp 1'b1;  else if (reset_mode || clear_data_overrun)    overrun_status <=#Tp 1'b0;endalways @ (posedge clk or posedge rst)begin  if (rst)    receive_buffer_status <= 1'b0;  else if (reset_mode || release_buffer)    receive_buffer_status <=#Tp 1'b0;  else if (~info_empty)    receive_buffer_status <=#Tp 1'b1;end/* End Status register *//* Interrupt Enable register (extended mode) */wire   [7:0] irq_en_ext;wire         bus_error_irq_en;wire         arbitration_lost_irq_en;wire         error_passive_irq_en;wire         data_overrun_irq_en_ext;wire         error_warning_irq_en_ext;wire         transmit_irq_en_ext;wire         receive_irq_en_ext;can_register #(8) IRQ_EN_REG( .data_in(data_in),  .data_out(irq_en_ext),  .we(we_interrupt_enable),  .clk(clk));assign bus_error_irq_en             = irq_en_ext[7];assign arbitration_lost_irq_en      = irq_en_ext[6];assign error_passive_irq_en         = irq_en_ext[5];assign data_overrun_irq_en_ext      = irq_en_ext[3];assign error_warning_irq_en_ext     = irq_en_ext[2];assign transmit_irq_en_ext          = irq_en_ext[1];assign receive_irq_en_ext           = irq_en_ext[0];/* End Bus Timing 0 register *//* Bus Timing 0 register */wire   [7:0] bus_timing_0;can_register #(8) BUS_TIMING_0_REG( .data_in(data_in),  .data_out(bus_timing_0),  .we(we_bus_timing_0),  .clk(clk));assign baud_r_presc = bus_timing_0[5:0];assign sync_jump_width = bus_timing_0[7:6];/* End Bus Timing 0 register *//* Bus Timing 1 register */wire   [7:0] bus_timing_1;can_register #(8) BUS_TIMING_1_REG( .data_in(data_in),  .data_out(bus_timing_1),  .we(we_bus_timing_1),  .clk(clk));assign time_segment1 = bus_timing_1[3:0];assign time_segment2 = bus_timing_1[6:4];assign triple_sampling = bus_timing_1[7];/* End Bus Timing 1 register *//* Error Warning Limit register */can_register_asyn #(8, 96) ERROR_WARNING_REG( .data_in(data_in),  .data_out(error_warning_limit),  .we(we_error_warning_limit),  .clk(clk),  .rst(rst));/* End Error Warning Limit register *//* Clock Divider register */wire   [7:0] clock_divider;wire         clock_off;wire   [2:0] cd;reg    [2:0] clkout_div;reg    [2:0] clkout_cnt;reg          clkout_tmp;can_register_asyn #(1, 0) CLOCK_DIVIDER_REG_7( .data_in(data_in[7]),  .data_out(clock_divider[7]),  .we(we_clock_divider_hi),  .clk(clk),  .rst(rst));assign clock_divider[6:4] = 3'h0;can_register_asyn #(1, 0) CLOCK_DIVIDER_REG_3( .data_in(data_in[3]),  .data_out(clock_divider[3]),  .we(we_clock_divider_hi),  .clk(clk),  .rst(rst));can_register_asyn #(3, 0) CLOCK_DIVIDER_REG_LOW( .data_in(data_in[2:0]),  .data_out(clock_divider[2:0]),  .we(we_clock_divider_low),  .clk(clk),  .rst(rst));assign extended_mode = clock_divider[7];assign clock_off     = clock_divider[3];assign cd[2:0]       = clock_divider[2:0];always @ (cd)begin  case (cd)                       /* synthesis full_case parallel_case */     3'b000 : clkout_div = 3'd0;    3'b001 : clkout_div = 3'd1;    3'b010 : clkout_div = 3'd2;    3'b011 : clkout_div = 3'd3;    3'b100 : clkout_div = 3'd4;    3'b101 : clkout_div = 3'd5;    3'b110 : clkout_div = 3'd6;    3'b111 : clkout_div = 3'd0;  endcaseendalways @ (posedge clk or posedge rst)begin  if (rst)    clkout_cnt <= 3'h0;  else if (clkout_cnt == clkout_div)    clkout_cnt <=#Tp 3'h0;  else    clkout_cnt <= clkout_cnt + 1'b1;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品无码一区二区三区| 亚洲视频一区二区在线观看| 欧美精三区欧美精三区| 欧美在线播放高清精品| 色婷婷香蕉在线一区二区| 成人高清视频在线| 成人免费毛片app| 波多野结衣中文字幕一区二区三区 | 日本乱人伦aⅴ精品| av中文字幕亚洲| 色综合久久中文字幕综合网| 色婷婷香蕉在线一区二区| 欧美性猛片xxxx免费看久爱 | 国产精品家庭影院| 欧美国产禁国产网站cc| 国产午夜精品一区二区三区嫩草 | 欧美午夜精品久久久| 欧美日韩在线播放三区四区| 欧美精品tushy高清| 日韩一卡二卡三卡四卡| 精品99999| 欧美高清在线一区二区| 中文字幕一区二区三区四区 | 亚洲国产成人av网| 天堂在线亚洲视频| 九一九一国产精品| 国产成人99久久亚洲综合精品| jlzzjlzz欧美大全| 91福利精品视频| 欧美国产日韩a欧美在线观看| 国产精品免费视频网站| 亚洲美女区一区| 免费成人在线视频观看| 国产精品亚洲一区二区三区在线 | 中文字幕亚洲在| 一区二区三区91| 日韩高清在线不卡| 国产成人精品亚洲日本在线桃色| 成av人片一区二区| 在线成人高清不卡| 久久久久久久久久看片| 亚洲日穴在线视频| 日本中文字幕一区二区有限公司| 国产美女主播视频一区| 91一区二区三区在线观看| 欧美一区二区三区精品| 国产精品欧美久久久久一区二区| 亚洲一区二区av在线| 精品一区二区三区视频在线观看 | 91精品国产综合久久久久久久久久| 久久奇米777| 亚洲小说欧美激情另类| 国产一区二区三区视频在线播放| 91片在线免费观看| 日韩欧美久久一区| 亚洲精品日韩专区silk| 久久99精品久久久久婷婷| 91麻豆国产自产在线观看| 日韩一区二区在线看片| 亚洲色图另类专区| 加勒比av一区二区| 欧美中文字幕一区| 欧美肥胖老妇做爰| 国产日韩综合av| 日韩高清国产一区在线| 91精品久久久久久久99蜜桃| 国产日韩欧美一区二区三区乱码| 一区二区三区日韩欧美| 麻豆91精品视频| 91片黄在线观看| 久久午夜国产精品| 亚洲精品免费一二三区| 裸体歌舞表演一区二区| 色综合久久66| 欧美精品色综合| 亚洲福利电影网| 麻豆成人久久精品二区三区红| 日本午夜一区二区| 高清不卡一区二区在线| 91精品久久久久久久91蜜桃| 国产精品国产自产拍高清av| 日韩高清在线观看| 色哟哟国产精品| 国产婷婷一区二区| 免费三级欧美电影| 色天天综合色天天久久| 国产精品福利电影一区二区三区四区| 丝袜诱惑制服诱惑色一区在线观看 | 亚洲国产成人高清精品| 激情成人综合网| 欧美性色综合网| 国产精品不卡在线| 国产一区91精品张津瑜| 欧美视频一区二区在线观看| 中文字幕免费一区| 久久国产欧美日韩精品| 欧美人与z0zoxxxx视频| 亚洲精品国产成人久久av盗摄| 国产91高潮流白浆在线麻豆| 欧美r级在线观看| 午夜久久电影网| 欧美综合一区二区| 中文字幕中文字幕一区| 欧美日韩一卡二卡| 国产欧美日韩精品一区| 国产真实乱对白精彩久久| 日韩欧美一区中文| 五月天丁香久久| 欧美亚洲禁片免费| 亚洲综合激情网| 91麻豆免费观看| 亚洲欧洲精品一区二区精品久久久 | 欧美精品99久久久**| 亚洲午夜精品一区二区三区他趣| 99精品视频免费在线观看| 中文幕一区二区三区久久蜜桃| 国产在线精品一区在线观看麻豆| 日韩视频一区二区三区| 亚洲成在人线在线播放| 91免费视频网| 亚洲美女精品一区| 色欧美片视频在线观看在线视频| 综合精品久久久| 粉嫩13p一区二区三区| 亚洲色图一区二区三区| 色婷婷亚洲一区二区三区| 一区二区三区加勒比av| 在线观看欧美日本| 亚洲成人先锋电影| 7777精品伊人久久久大香线蕉完整版| 丝袜亚洲另类丝袜在线| 欧美久久久久久蜜桃| 欧美午夜精品一区二区蜜桃| 亚洲国产精品成人综合| 粉嫩av一区二区三区粉嫩 | 中文字幕在线不卡视频| 国产精品一卡二| 中文字幕一区二区在线播放| 99久久99久久精品免费观看| 一卡二卡三卡日韩欧美| 欧美猛男gaygay网站| 美日韩一级片在线观看| 国产日韩欧美一区二区三区综合| www.av精品| 亚洲成人激情社区| 日韩一区二区在线播放| 国内精品久久久久影院色| 国产精品网站一区| 色综合天天天天做夜夜夜夜做| 亚洲成av人片观看| 26uuu精品一区二区在线观看| 国产超碰在线一区| 一区二区三区不卡视频在线观看 | 国产精品久久久爽爽爽麻豆色哟哟| 国产91综合一区在线观看| 亚洲色图在线视频| 欧美一区二视频| 天天操天天色综合| 国产日本一区二区| 欧洲亚洲国产日韩| 强制捆绑调教一区二区| 国产精品女同一区二区三区| 欧美精品99久久久**| 高清在线不卡av| 青青草国产成人99久久| 国产精品初高中害羞小美女文| 欧美一区二区三区视频在线观看| 国产成人av一区二区| 欧美电视剧在线观看完整版| av午夜一区麻豆| 麻豆国产精品777777在线| 亚洲男帅同性gay1069| 久久视频一区二区| 在线观看日韩精品| 成人精品在线视频观看| 视频一区二区三区入口| 亚洲激情男女视频| 久久亚洲私人国产精品va媚药| 欧美乱妇一区二区三区不卡视频| 国产99久久久精品| 亚洲欧美国产高清| 欧美日韩一本到| 成人aaaa免费全部观看| 精品在线视频一区| 亚洲精品免费视频| 中文字幕中文字幕中文字幕亚洲无线| 日韩免费在线观看| 91精品国产综合久久精品app| av欧美精品.com| 成人激情免费视频| 精品亚洲国产成人av制服丝袜| 日韩激情视频在线观看| 一区二区三区中文字幕精品精品 | 亚洲成人免费视| 国产精品国模大尺度视频| 欧美激情在线一区二区三区| 欧美一区二区三区视频免费 | 91视频一区二区| 国产99精品视频| 高清国产午夜精品久久久久久|