【FPGA】4,按键的消抖,verilog中关于并行处理的心得,FPGA最小系统,Verilog中同步复位和异步复位比较

本文主要是介绍【FPGA】4,按键的消抖,verilog中关于并行处理的心得,FPGA最小系统,Verilog中同步复位和异步复位比较,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1,http://blog.sina.com.cn/s/blog_72c14a3d010150m4.html

erilog入门经验(一) always块使用

https://blog.csdn.net/phenixyf/article/details/46364193

如果我们把按键的输出做为一个时钟域(时钟频率未知,但信号的slow rate是已知的,既最大20ms左右)的信号,用另外一个时钟来采集这个按键的输出,则就可以把按键的消抖归结为一个最基本的CDC问题来处理。而问题的核心是如何确定采集时钟的频率。假设采集时钟的周期小于20ms,那么,采集时钟就有可能两次采到按键断开时的不确定的值,就没有办法避免采用CDC电路所想避免的问题。所以采集时钟的周期必须要大于20ms。假设采集时钟的周期大于120ms的话,就有可能采不到按键的闭合信号,所以采集时钟的周期必须小于120ms。我们在这里选用周期为25ms的采集时钟(频率为40Hz)。

下面的verilog实现实际上是一个标准的CDC电路,直接可以用来做按键的消抖。

module RMV_BJ (

BJ_CLK, //采集时钟,40Hz

RESET, //系统复位信号

BUTTON_IN, //按键输入信号

BUTTON_OUT //消抖后的输出信号

);

input B_CLK;

input RESET;

input BUTTON_IN;

output BUTTON_OUT;

reg BUTTON_IN_Q, BUTTON_IN_2Q, BUTTON_IN_3Q;

always @(posedge BJ_CLK or negedge RESET)

begin

if(~RESET)

begin

BUTTON_IN_Q <= 1'b1;

BUTTON_IN_2Q <= 1'b1;

BUTTON_IN_3Q <= 1'b1;

end

else

begin

BUTTON_IN_Q <= BUTTON_IN;

BUTTON_IN_2Q <= BUTTON_IN_Q;

BUTTON_IN_3Q <= BUTTON_IN_2Q;

end

end

wire BUTTON_OUT = BUTTON_IN_2Q | BUTTON_IN_3Q;

endmodule

主要对Q1,Q2,Q3讲解下。

前提条件,当按下后的持续低电平(BUTTON_IN=0)时间不低于120ms

当按键按下后,BUTTON_IN=0,此时

t=0 ms,Q1=BUTTON_IN=0;Q2=1;Q3=1;

t=25 ms,Q1=BUTTON_IN=0;Q2<=Q1=0;Q3=1;

t=50 ms,Q1=BUTTON_IN=0;Q2<=Q1=0;Q3<=Q2=0;

wire BUTTON_OUT = BUTTON_IN_2Q | BUTTON_IN_3Q=0|0=0;输出低电平

2,verilog中关于并行处理的心得

https://blog.csdn.net/jiangbeicaizi000/article/details/52093945

并行处理的对象的值都是此时刻之前的值

3,http://www.stepfpga.com/doc/7._%E6%8C%89%E9%94%AE%E6%B6%88%E6%8A%96

// Module Function:按键消抖module debounce (clk,rst,key,key_pulse);parameter       N  =  1;                      //要消除的按键的数量input             clk;                    //系统时钟input             rst;                    //复位信号input 	[N-1:0]   key;                        //输入的按键					output  [N-1:0]   key_pulse;                  //按键动作产生的脉冲	reg     [N-1:0]   key_rst_pre;                //定义一个寄存器型变量存储上一个触发时的按键值reg     [N-1:0]   key_rst;                    //定义一个寄存器变量储存储当前时刻触发的按键值wire    [N-1:0]   key_edge;                   //检测到按键由高到低变化是产生一个高脉冲//利用非阻塞赋值特点,将两个时钟触发时按键状态存储在两个寄存器变量中always @(posedge clk  or  negedge rst)beginif (!rst) beginkey_rst <= {N{1'b1}};                //初始化时给key_rst赋值全为1,{}中表示N个1key_rst_pre <= {N{1'b1}};endelse beginkey_rst <= key;                     //第一个时钟上升沿触发之后key的值赋给key_rst,同时key_rst的值赋给key_rst_prekey_rst_pre <= key_rst;             //非阻塞赋值。相当于经过两个时钟触发,key_rst存储的是当前时刻key的值,key_rst_pre存储的是前一个时钟的key的值end    endassign  key_edge = key_rst_pre & (~key_rst);//脉冲边沿检测。当key检测到下降沿时,key_edge产生一个时钟周期的高电平reg	[17:0]	  cnt;                       //产生延时所用的计数器,系统时钟12MHz,要延时20ms左右时间,至少需要18位计数器     //产生20ms延时,当检测到key_edge有效是计数器清零开始计数always @(posedge clk or negedge rst)beginif(!rst)cnt <= 18'h0;else if(key_edge)cnt <= 18'h0;elsecnt <= cnt + 1'h1;end  reg     [N-1:0]   key_sec_pre;                //延时后检测电平寄存器变量reg     [N-1:0]   key_sec;                    //延时后检测key,如果按键状态变低产生一个时钟的高脉冲。如果按键状态是高的话说明按键无效always @(posedge clk  or  negedge rst)beginif (!rst) key_sec <= {N{1'b1}};                else if (cnt==18'h3ffff)key_sec <= key;  endalways @(posedge clk  or  negedge rst)beginif (!rst)key_sec_pre <= {N{1'b1}};else                   key_sec_pre <= key_sec;             end      assign  key_pulse = key_sec_pre & (~key_sec);     endmodule

4,

【读书笔记】详细解析基于FPGA的独立按键消抖

http://blog.chinaaet.com/lincoding/p/5100050183

5,FPGA最小系统http://www.cnblogs.com/crazybingo/archive/2011/07/26/2117116.html


6,

Verilog中同步复位和异步复位比较

点击打开链接

https://blog.csdn.net/kobesdu/article/details/16356997

7,实验操作



当把0改成1后


变化




8,Verilog 4位 二选一 多路选择器

https://www.cnblogs.com/zxl2431/archive/2010/09/17/1829603.html

下面这个图可以看到NOT,AND,OR的图形表示



这位博主的这几个触发器等器件不错

zxl2431

随笔分类 - FPGA小练习

勿在浮沙建高楼
加法器,乘法器综合以后会是什么样子?
摘要: reg[7 : 0] a;reg[7 : 0] b;assign a[7:0] = (b[7:0] * 100)/1000;这句话在算的前半段,值是可能溢出的,最后的结果当然不会溢出,我想知道具体综合的时候有没有溢出的风险。 阅读全文

posted @ 2012-12-15 11:27 zxl2431 阅读(213) | 评论 (0) 编辑

啥子是LUT
摘要: 一般来说简化的FPGA是由6部分组成的:可编程I/O单元,基本可编程逻辑单元...  基本可编程逻辑单元是可编程逻辑的主体,可以说CPLD和FPGA除了工艺不同以外,还有就是LAB(LogicArrayBlock)逻辑阵列模块的排布方式不同,CPLD是LAB排列在周围布线池在中间,而FPGA是LAB到处分布,布线资源在其中穿插,就像大城市的房子和街道,如图:  一个LAB是有几个LE(LogicElement)逻辑单元组成的一般10个吧。  一般情况下一个LE又是由一个LUT加一个进位逻辑和一个Register加组成的。所以也是在一般情况下LUT的数目跟Register的数目是差不多的。一般的 阅读全文

posted @ 2010-12-08 17:04 zxl2431 阅读(2389) | 评论 (1) 编辑

DE2上SRAM测试(一)
摘要: SDRAM我是没搞定,SRAM应该没问题。。。  SRAM的控制很简单,DE2板子上面的是512KB的SRAM—IS61LV25616.先简单的看一下其引脚和时序图:      可以看到在一般情况下起到最重要的是WE,其他给一个默认的值就好,CE让它有效,OE让它有效,LB和UB现在也让它都有效就好。这样就少了很多事。    这是一个写的时序图,在前面已经省去了很多引脚,这里就简单了,先给地址,过Tsa拉低WE,同时送数据,完事后将WE拉高,数据就会被写入。在要求不太严格的情况下,三者同时进行也是可以的。这里需要注意的是数据口是双向的,要做一个三态门才行,在写的时候它选通,在读SRAM的时候它 阅读全文

posted @ 2010-12-06 15:18 zxl2431 阅读(878) | 评论 (3) 编辑

Verilog 串口实验
摘要: 写了个串口接收的代码,没反应,沉思ing。。。最怕就是思路很清晰,结构很合理,没有结果。差错都不好查。再来写个发送的看看。串口接收的已经调试成功,串口发送的还有点小问题,这边串口终端也能接收数据,但接收的数据总是 00 ,不管你发什么都是这个样子的,什么问题了?  再次验证了一个真理,好记性不如乱笔头。上次Modelsim 破解成功,这次重新安装了一下,还是按照上次的方法破解,搞了半天才好,吼吼,在修改环境变量时添加这个文件LM_LICENSE_FILE,它的途径一定是你放他的目录+它的名字,呵呵。  必须要为自己的粗心大意买单!在写状态机的时候,没想到很好的名字,就直接 reg[3:0] i 阅读全文

posted @ 2010-12-04 14:40 zxl2431 阅读(869) | 评论 (0) 编辑

简单的人机界面——LCD1602+PS2
摘要: 在被4*4的矩阵键盘搞的有点晕的时候,我决定换成PS2的键盘和LCD1602,在初步认识和简单调试出来1602后,今天准备学习PS2。在FPGA的学习上一直都是这种状态深入不下去,客观上是DE0带的资料确实有点少,一直也没找到一个好的突破口,主要还是付出不够。OK,1602和PS2键盘分别已经基本搞懂了,先总结一下遇到的问题,再来想一下两者中间的连接模块。参考DE2上面的LCD1602的例程。只是... 阅读全文

posted @ 2010-11-06 22:34 zxl2431 阅读(587) | 评论 (0) 编辑

Calculator
摘要: 最近想用Verilog写一个计算器,主要就可以分为两部分了:人机界面和运算部分。人机界面其实也很简单就是一个4*4的矩阵键盘和几个数码管,在做的时候就会有基本的按键扫描,去抖动和数码管显示,但一直都有一个问题显示不是很稳定,总是喜欢跳到别的键当然也不是乱跳,一行之间的数值是不会乱跳的,喜欢在它所在的列之间跳动,代码我认为是没有什么问题的,按键的消抖我也做了,我用的是买的4*4键盘难道是它不稳定,我... 阅读全文

posted @ 2010-11-05 16:52 zxl2431 阅读(148) | 评论 (0) 编辑

FPGA经典模块(1)——分频器
摘要: 在数字逻辑电路设计中,分频器是一种基本电路,通过分频可以得到需要的时钟频率。常见的分频器有二进制分频器、偶数次分频器、奇数次分频器、占空比可调的分频器和小数分频器。分频的方法很多最常见的就是利用加法器对时钟信号进行分频,当然也可以利用一些专用的电路结构来实现。  偶数次分频器是比较简单的,最简单的是2分频的即使不用加法器也可以搞定,在每个时钟上升沿来的时候把电平翻转一次就OK。其他的偶数次分频电路... 阅读全文

posted @ 2010-10-25 13:44 zxl2431 阅读(3005) | 评论 (0) 编辑

简单状态机设计(2)
摘要: 2.0 汽车尾灯控制电路设计  汽车尾灯发出信号主要是给后面的行驶汽车的司机看的,汽车驾驶室通常有刹车开关(HAZ)、左转弯开关(LEFT)和右转弯开关(RIGHT),司机通过操作这3个指示灯,分别用LA,LB,LC,RA,RB,RC表示,这些灯的亮、灭规律如下:  (1) 汽车正常行驶时,尾部两侧6个灯全部熄灭。  (2) 刹车时,汽车尾灯工作在警告状态,所有6个灯按一定频率闪烁。  (3) 左... 阅读全文

posted @ 2010-10-09 20:34 zxl2431 阅读(218) | 评论 (0) 编辑

简单状态机设计(1)
摘要: 1.0 序列检测器电路设计  设计一个序列检测器电路,功能是:检测出串行输入数据Sin中的4位二进制序列0101(自左至右输入),当检测到该序列时,输出Out=1;没有检测到该序列时,输出Out=0(注意考虑序列重叠的可能性,如010101,相当于出现两个0101序列)。  经过分析,首先可以确定采用米利型状态机设计该电路。因为该电路在连续收到信号0101时,输出为1,其他情况下输出为0,所以采用... 阅读全文

posted @ 2010-10-07 16:26 zxl2431 阅读(5042) | 评论 (5) 编辑

基本时序逻辑电路练习
摘要: 基本时序逻辑电路  · D触发器  · JK触发器  · 移位寄存器  · 计数器  · 分频器  ·  在基本时序逻辑电路的编写中,最常见的是这样几种警告:  (1): Warning: Some pins have incomplete I/O assignments. Refer to the I/O Ass... 阅读全文

posted @ 2010-09-24 21:13 zxl2431 阅读(1300) | 评论 (0) 编辑

基本组合逻辑电路练习
摘要: 基本组合逻辑电路  · 编码器  · 译码器/数据分配器  · 数据选择器  · 数值比较器  · 算术运算电路(加法器、减法器、乘法器)  1.0 编码器(以4线-2线编码器为例)  采用数据流方式描述:  代码    查看RTL视图:            跟我在纸上画的不太一样,其实out0和out1的逻辑表达式中有一项是... 阅读全文

posted @ 2010-09-19 21:32 zxl2431 阅读(4445) | 评论 (0) 编辑

用Verilog HDL的三种建模方式描述——2选1数据选择器
摘要: 1,数据选择器的定义和功能  数据选择是指经过选择,把多路数据中的某一路传送到公共数据线上,实现数据选择功能的逻辑电路称为数据选择器。它的作用相当于多输入的单刀多掷开关。  2,集成电路数据选择器  常用的集成电路数据选择器有许多种类,并且有COMS和TTL产品。例如,四2选1数据选择器74x157、双4选1数据选择器74x153、8选1数据选择器74x151等。  还有一些数据选择器具有三态输出... 阅读全文

posted @ 2010-09-17 21:32 zxl2431 阅读(16052) | 评论 (0) 编辑

按照缺氧老兄的博客modelsim仿真成功
摘要: 我用的是modelsim-altera 6.5b, 原来装过后来重装系统又没了,今天再把他装上。记得前段时间弄SDRAM控制器的时候不会用Modelsim仿真,真的是比较痛苦。装上以后跟原来一样打开时提示错误:              在网上搜了一下在http://www.cnblogs.com/oomusou/archive/2008/02/04/1064193.html找到了解决的办法,后来... 阅读全文

posted @ 2010-09-15 22:41 zxl2431 阅读(407) | 评论 (1) 编辑

Powered by: 
博客园 

https://www.cnblogs.com/zxl2431/category/261884.html


zxl2431

随笔分类 - FPGA小练习

勿在浮沙建高楼
加法器,乘法器综合以后会是什么样子?
摘要: reg[7 : 0] a;reg[7 : 0] b;assign a[7:0] = (b[7:0] * 100)/1000;这句话在算的前半段,值是可能溢出的,最后的结果当然不会溢出,我想知道具体综合的时候有没有溢出的风险。 阅读全文

posted @ 2012-12-15 11:27 zxl2431 阅读(213) | 评论 (0) 编辑

啥子是LUT
摘要: 一般来说简化的FPGA是由6部分组成的:可编程I/O单元,基本可编程逻辑单元...  基本可编程逻辑单元是可编程逻辑的主体,可以说CPLD和FPGA除了工艺不同以外,还有就是LAB(LogicArrayBlock)逻辑阵列模块的排布方式不同,CPLD是LAB排列在周围布线池在中间,而FPGA是LAB到处分布,布线资源在其中穿插,就像大城市的房子和街道,如图:  一个LAB是有几个LE(LogicElement)逻辑单元组成的一般10个吧。  一般情况下一个LE又是由一个LUT加一个进位逻辑和一个Register加组成的。所以也是在一般情况下LUT的数目跟Register的数目是差不多的。一般的 阅读全文

posted @ 2010-12-08 17:04 zxl2431 阅读(2389) | 评论 (1) 编辑

DE2上SRAM测试(一)
摘要: SDRAM我是没搞定,SRAM应该没问题。。。  SRAM的控制很简单,DE2板子上面的是512KB的SRAM—IS61LV25616.先简单的看一下其引脚和时序图:      可以看到在一般情况下起到最重要的是WE,其他给一个默认的值就好,CE让它有效,OE让它有效,LB和UB现在也让它都有效就好。这样就少了很多事。    这是一个写的时序图,在前面已经省去了很多引脚,这里就简单了,先给地址,过Tsa拉低WE,同时送数据,完事后将WE拉高,数据就会被写入。在要求不太严格的情况下,三者同时进行也是可以的。这里需要注意的是数据口是双向的,要做一个三态门才行,在写的时候它选通,在读SRAM的时候它 阅读全文

posted @ 2010-12-06 15:18 zxl2431 阅读(878) | 评论 (3) 编辑

Verilog 串口实验
摘要: 写了个串口接收的代码,没反应,沉思ing。。。最怕就是思路很清晰,结构很合理,没有结果。差错都不好查。再来写个发送的看看。串口接收的已经调试成功,串口发送的还有点小问题,这边串口终端也能接收数据,但接收的数据总是 00 ,不管你发什么都是这个样子的,什么问题了?  再次验证了一个真理,好记性不如乱笔头。上次Modelsim 破解成功,这次重新安装了一下,还是按照上次的方法破解,搞了半天才好,吼吼,在修改环境变量时添加这个文件LM_LICENSE_FILE,它的途径一定是你放他的目录+它的名字,呵呵。  必须要为自己的粗心大意买单!在写状态机的时候,没想到很好的名字,就直接 reg[3:0] i 阅读全文

posted @ 2010-12-04 14:40 zxl2431 阅读(869) | 评论 (0) 编辑

简单的人机界面——LCD1602+PS2
摘要: 在被4*4的矩阵键盘搞的有点晕的时候,我决定换成PS2的键盘和LCD1602,在初步认识和简单调试出来1602后,今天准备学习PS2。在FPGA的学习上一直都是这种状态深入不下去,客观上是DE0带的资料确实有点少,一直也没找到一个好的突破口,主要还是付出不够。OK,1602和PS2键盘分别已经基本搞懂了,先总结一下遇到的问题,再来想一下两者中间的连接模块。参考DE2上面的LCD1602的例程。只是... 阅读全文

posted @ 2010-11-06 22:34 zxl2431 阅读(587) | 评论 (0) 编辑

Calculator
摘要: 最近想用Verilog写一个计算器,主要就可以分为两部分了:人机界面和运算部分。人机界面其实也很简单就是一个4*4的矩阵键盘和几个数码管,在做的时候就会有基本的按键扫描,去抖动和数码管显示,但一直都有一个问题显示不是很稳定,总是喜欢跳到别的键当然也不是乱跳,一行之间的数值是不会乱跳的,喜欢在它所在的列之间跳动,代码我认为是没有什么问题的,按键的消抖我也做了,我用的是买的4*4键盘难道是它不稳定,我... 阅读全文

posted @ 2010-11-05 16:52 zxl2431 阅读(148) | 评论 (0) 编辑

FPGA经典模块(1)——分频器
摘要: 在数字逻辑电路设计中,分频器是一种基本电路,通过分频可以得到需要的时钟频率。常见的分频器有二进制分频器、偶数次分频器、奇数次分频器、占空比可调的分频器和小数分频器。分频的方法很多最常见的就是利用加法器对时钟信号进行分频,当然也可以利用一些专用的电路结构来实现。  偶数次分频器是比较简单的,最简单的是2分频的即使不用加法器也可以搞定,在每个时钟上升沿来的时候把电平翻转一次就OK。其他的偶数次分频电路... 阅读全文

posted @ 2010-10-25 13:44 zxl2431 阅读(3005) | 评论 (0) 编辑

简单状态机设计(2)
摘要: 2.0 汽车尾灯控制电路设计  汽车尾灯发出信号主要是给后面的行驶汽车的司机看的,汽车驾驶室通常有刹车开关(HAZ)、左转弯开关(LEFT)和右转弯开关(RIGHT),司机通过操作这3个指示灯,分别用LA,LB,LC,RA,RB,RC表示,这些灯的亮、灭规律如下:  (1) 汽车正常行驶时,尾部两侧6个灯全部熄灭。  (2) 刹车时,汽车尾灯工作在警告状态,所有6个灯按一定频率闪烁。  (3) 左... 阅读全文

posted @ 2010-10-09 20:34 zxl2431 阅读(218) | 评论 (0) 编辑

简单状态机设计(1)
摘要: 1.0 序列检测器电路设计  设计一个序列检测器电路,功能是:检测出串行输入数据Sin中的4位二进制序列0101(自左至右输入),当检测到该序列时,输出Out=1;没有检测到该序列时,输出Out=0(注意考虑序列重叠的可能性,如010101,相当于出现两个0101序列)。  经过分析,首先可以确定采用米利型状态机设计该电路。因为该电路在连续收到信号0101时,输出为1,其他情况下输出为0,所以采用... 阅读全文

posted @ 2010-10-07 16:26 zxl2431 阅读(5042) | 评论 (5) 编辑

基本时序逻辑电路练习
摘要: 基本时序逻辑电路  · D触发器  · JK触发器  · 移位寄存器  · 计数器  · 分频器  ·  在基本时序逻辑电路的编写中,最常见的是这样几种警告:  (1): Warning: Some pins have incomplete I/O assignments. Refer to the I/O Ass... 阅读全文

posted @ 2010-09-24 21:13 zxl2431 阅读(1300) | 评论 (0) 编辑

基本组合逻辑电路练习
摘要: 基本组合逻辑电路  · 编码器  · 译码器/数据分配器  · 数据选择器  · 数值比较器  · 算术运算电路(加法器、减法器、乘法器)  1.0 编码器(以4线-2线编码器为例)  采用数据流方式描述:  代码    查看RTL视图:            跟我在纸上画的不太一样,其实out0和out1的逻辑表达式中有一项是... 阅读全文

posted @ 2010-09-19 21:32 zxl2431 阅读(4445) | 评论 (0) 编辑

用Verilog HDL的三种建模方式描述——2选1数据选择器
摘要: 1,数据选择器的定义和功能  数据选择是指经过选择,把多路数据中的某一路传送到公共数据线上,实现数据选择功能的逻辑电路称为数据选择器。它的作用相当于多输入的单刀多掷开关。  2,集成电路数据选择器  常用的集成电路数据选择器有许多种类,并且有COMS和TTL产品。例如,四2选1数据选择器74x157、双4选1数据选择器74x153、8选1数据选择器74x151等。  还有一些数据选择器具有三态输出... 阅读全文

posted @ 2010-09-17 21:32 zxl2431 阅读(16052) | 评论 (0) 编辑

按照缺氧老兄的博客modelsim仿真成功
摘要: 我用的是modelsim-altera 6.5b, 原来装过后来重装系统又没了,今天再把他装上。记得前段时间弄SDRAM控制器的时候不会用Modelsim仿真,真的是比较痛苦。装上以后跟原来一样打开时提示错误:              在网上搜了一下在http://www.cnblogs.com/oomusou/archive/2008/02/04/1064193.html找到了解决的办法,后来... 阅读全文

posted @ 2010-09-15 22:41 zxl2431 阅读(407) | 评论 (1) 编辑



这篇关于【FPGA】4,按键的消抖,verilog中关于并行处理的心得,FPGA最小系统,Verilog中同步复位和异步复位比较的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/197243

相关文章

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

百度/小米/滴滴/京东,中台架构比较

小米中台建设实践 01 小米的三大中台建设:业务+数据+技术 业务中台--从业务说起 在中台建设中,需要规范化的服务接口、一致整合化的数据、容器化的技术组件以及弹性的基础设施。并结合业务情况,判定是否真的需要中台。 小米参考了业界优秀的案例包括移动中台、数据中台、业务中台、技术中台等,再结合其业务发展历程及业务现状,整理了中台架构的核心方法论,一是企业如何共享服务,二是如何为业务提供便利。

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟&nbsp;开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚&nbsp;第一站:海量资源,应有尽有 走进“智听

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

poj 1287 Networking(prim or kruscal最小生成树)

题意给你点与点间距离,求最小生成树。 注意点是,两点之间可能有不同的路,输入的时候选择最小的,和之前有道最短路WA的题目类似。 prim代码: #include<stdio.h>const int MaxN = 51;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int P;int prim(){bool vis[MaxN];