一周掌握FPGAVerilogHDL语法day1

FPGA技术江湖 2025-03-20 08:43

大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。


今天给大侠带来的是一周掌握FPGA Verilog HDL 语法,今天开启第一天,下面咱们废话就不多说了,一起来看看吧。
在学习中,学习任何东西都有一个过程,一个初步认识到慢慢了解再到精通掌握的过程,当然,学习Verilog HDL语法也是一样,首先你要了解什么是Verilog HDL,然后结合实践再遵从理论,你才可能理解的更加迅速更加透彻。



Verilog HDL是一种用于数字逻辑电路设计的语言。用Verilog HDL描述的电路设计就是该电路的Verilog HDL模型。Verilog HDL既是一种行为描述的语言也是一种结构描述的语言。这也就是说,既可以用电路的功能描述也可以用元器件和它们之间的连接来建立所设计电路的Verilog HDL模型。Verilog模型可以是实际电路的不同级别的抽象。这些抽象的级别和它们对应的模型类型共有以下五种。
  • 系统级(system):用高级语言结构实现设计模块的外部性能的模型。

  • 算法级(algorithm):用高级语言结构实现设计算法的模型。

  • RTL级(Register Transfer Level):描述数据在寄存器之间流动和如何处理这些数据的模型。

  • 门级(gate-level):描述逻辑门以及逻辑门之间的连接的模型。 

  • 开关级(switch-level):描述器件中三极管和储存节点以及它们之间连接的模型。



一个复杂电路系统的完整Verilog HDL模型是由若干个Verilog HDL模块构成的,每一个模块又可以由若干个子模块构成。其中有些模块需要综合成具体电路,而有些模块只是与用户所设计的模块交互的现存电路或激励信号源。利用Verilog HDL语言结构所提供的这种功能就可以构造一个模块间的清晰层次结构来描述极其复杂的大型设计,并对所作设计的逻辑电路进行严格的验证。Verilog HDL行为描述语言作为一种结构化和过程性的语言,其语法结构非常适合于算法级和RTL级的模型设计。这种行为描述语言具有以下功能:

  • 可描述顺序执行或并行执行的程序结构。 
  • 用延迟表达式或事件表达式来明确地控制过程的启动时间。 
  • 通过命名的事件来触发其它过程里的激活行为或停止行为。 
  • 提供了条件、if-else、case、循环程序结构。 
  • 提供了可带参数且非零延续时间的任务(task)程序结构。 
  • 提供了可定义新的操作符的函数结构(function)。 
  • 提供了用于建立表达式的算术运算符、逻辑运算符、位运算符。 




Verilog HDL语言作为一种结构化的语言也非常适合于门级和开关级的模型设计。因其结构化的特点又使它具有以下功能: 

  • 提供了完整的一套组合型原语(primitive); 
  • 提供了双向通路和电阻器件的原语; 
  • 可建立MOS器件的电荷分享和电荷衰减动态模型。



Verilog HDL的构造性语句可以精确地建立信号的模型。这是因为在Verilog HDL中,提供了延迟和输出强度的原语来建立精确程度很高的信号模型。信号值可以有不同的的强度,可以通过设定宽范围的模糊值来降低不确定条件的影响。Verilog HDL作为一种高级的硬件描述编程语言,有着类似C语言的风格。其中有许多语句如:if语句、case语句等和C语言中的对应语句十分相似。如果读者已经掌握C语言编程的基础,那么学习Verilog HDL并不困难,我们只要对Verilog HDL某些语句的特殊方面着重理解,并加强上机练习就能很好地掌握它,利用它的强大功能来设计复杂的数字逻辑电路。下面我们将对Verilog HDL中的基本语法逐一加以介绍。




简单的Verilog HDL模块




简单的Verilog HDL程序介绍

下面先介绍几个简单的Verilog HDL程序,然后从中分析Verilog HDL程序的特性。

module adder ( count,sum,a,b,cin );
input [2:0] a,b; input cin;
output count; output [2:0] sum;
assign {count,sum} = a + b + cin;
endmodule
上面这个例子通过连续赋值语句描述了一个名为adder的三位加法器可以根据两个三比特数a、b和进位(cin)计算出和(sum)和进位(count)。从例子中可以看出整个Verilog HDL程序是嵌套在module和 endmodule 声明语句里的。



module compare ( equal,a,b );    input [1:0] a,b; //声明输入信号a,b    output equal; //声明输出信号equal
  assign equal=(a==b)?1:0;    /*如果a、b 两个输入信号相等,输出为1。否则为0*/ 
endmodule

上面这个程序通过连续赋值语句描述了一个名为compare的比较器。对两比特数 a、b 进行比较,如a与b相等,则输出equal为高电平,否则为低电平。在这个程序中,/*........*/和//.........表示注释部分,注释只是为了方便程序员理解程序,对编译是不起作用的。




module trist2(out,in,enable);
input in, enable; output out;
  bufif1 mybuf(out,in,enable);   endmodule

上面这个程序描述了一个名为trist2的三态驱动器。程序通过调用一个在Verilog语言库中现存的三态驱动器实例元件bufif1来实现其功能。




module trist1(out,in,enable);
input in, enable; output out;
mytri tri_inst(out,in,enable); //调用由mytri模块定义的实例元件tri_inst 
endmodule 
module mytri(out,in,enable);
input in, enable; output out;
assign out = enable? in : 'bz;
endmodule

这个程序例子通过另一种方法描述了一个三态门。在这个例子中存在着两个模块。模块trist1调用由模块mytri定义的实例元件tri_inst。模块trist1是顶层模块。模块mytri则被称为子模块。 




通过上面的例子可以了解到:

  • Verilog HDL程序是由模块构成,每个模块的内容都是嵌在module和endmodule两个语句之间。每个模块实现特定的功能。模块是可以进行层次嵌套的。正因为如此,才可以将大型的数字电路设计分割成不同的小模块来实现特定的功能,最后通过顶层模块调用子模块来实现整体功能。

  • 每个模块要进行端口定义,并说明输入输出口,然后对模块的功能进行行为逻辑描述。

  • Verilog HDL程序的书写格式自由,一行可以写几个语句,一个语句也可以分写多行。

  • 除了endmodule语句外,每个语句和数据定义的最后必须有分号。

  • 可以用/*.....*/和//.......对Verilog HDL程序的任何部分作注释。一个有使用价值的源程序都应当加上必要的注释,以增强程序的可读性和可维护性。




模块的结构

Verilog的基本设计单元是“模块”(block)。一个模块是由两部分组成的,一部分描述接口,另一部分描述逻辑功能,即定义输入是如何影响输出的。下面举例说明:
module block (a,b,c,d);    input a,b;  output c,d;    assign c= a | b ;  assign d= a & b;  endmodule

上面的例子,程序模块下面是一个电路图的符号。在众多时候,程序模块和电路图符号是一致的,这是因为电路图符号的引脚也就是程序模块的接口。而程序模块描述了电路图符号所实现的逻辑功能。
上面的Verilog设计中,模块中的第3、第4行说明接口的信号流向,第6、第7行说明了模块的逻辑功能。以上就是设计一个简单的Verilog程序模块所需的全部内容。从上面的例子可以看出,Verilog结构完全嵌在module和endmodule声明语句之间,每个Verilog程序包括四个主要部分:端口定义、I/O说明、内部信号声明、功能定义。



模块的端口定义

模块的端口声明了模块的输入输出口。

其格式如下:module 模块名(口1,口2,口3,口4, ………); 




模块内容 

模块的内容包括I/O说明、内部信号声明、功能定义。

1、I/O说明的格式如下:

输入口:input 端口名1,端口名2,………,端口名i; //(共有i个输入口) 

输出口:output 端口名1,端口名2,………,端口名j; //(共有j个输出口)

I/O说明也可以写在端口声明语句里。其格式如下: 

module module_name(input port1,input port2,…output port1,output port2… );


2、内部信号说明:

在模块内用到的和与端口有关的 wire 和 reg 变量的声明。 

如:reg [width-1 : 0] R变量1,R变量2 。。。。; 

wire [width-1 : 0] W变量1,W变量2 。。。。;……


3、功能定义: 

模块中最重要的部分是逻辑功能定义部分。有三种方法可在模块中产生逻辑。

1). 用“assign”声明语句。

如:assign a = b & c; 这种方法的句法很简单,只需写一个“assign”,后面再加一个方程式即可。例子中的方程式描述了一个有两个输入的与门。

2. 用实例元件 。

如:and and_inst( q, a, b ); 采用实例元件的方法象在电路图输入方式下,调入库元件一样。键入元件的名字和相连的引脚即可,表示在设计中用到一个跟与门(and)一样的名为and_inst的与门,其输入端为a, b,输出为q。要求每个实例元件的名字必须是唯一的,以避免与其他调用与门(and)的实例混淆。 

3). 用“always”块。

always @(posedge clk or posedge clr)   begin     if(clr) q <= 0;     else if(en) q <= d;   end

采用“assign”语句是描述组合逻辑最常用的方法之一。而“always”块既可用于描述组合逻辑也可描述时序逻辑。上面的例子用“always”块生成了一个带有异步清除端的D触发器。“always”块可用很多种描述手段来表达逻辑,例如上例中就用了if...else语句来表达逻辑关系。如按一定的风格来编写“always”块,可以通过综合工具把源代码自动综合成用门级结构表示的组合或时序逻辑电路。

注意:如果用Verilog模块实现一定的功能,首先应该清楚哪些是同时发生的,哪些是顺序发生的。上面三个例子分别采用了“assign”语句、实例元件和“always”块。这三个例子描述的逻辑功能是同时执行的。也就是说,如果把这三项写到一个 VeriIog 模块文件中去,它们的次序不会影响逻辑实现的功能。这三项是同时执行的,也就是并发的。 

然而,在“always”模块内,逻辑是按照指定的顺序执行的。“always”块中的语句称为“顺序语句”,因为它们是顺序执行的。请注意,两个或更多的“always”模块也是同时执行的,但是模块内部的语句是顺序执行的。看一下“always”内的语句,你就会明白它是如何实现功能的。if..else… if必须顺序执行,否则其功能就没有任何意义。如果else语句在if语句之前执行,功能就会不符合要求。为了能实现上述描述的功能,“always”模块内部的语句将按照书写的顺序执行。








数据类型及其常量、变量




Verilog HDL中总共有十九种数据类型,数据类型是用来表示数字电路硬件中的数据储存和传送元素的。在这里我们先只介绍四个最基本的数据类型,它们是: reg型、wire型、integer型、parameter型,其它数据类型在后面逐步介绍,也可以查阅相关Verilog HDL语法参考书,其它的类型如下:large型、medium型、scalared型、time型、small型、tri型、trio型、tri1型、triand型、trior型、trireg型、vectored型、wand型、wor型。这些数据类型除time型外都与基本逻辑单元建库有关,与系统设计没有很大的关系。
在一般电路设计自动化的环境下,仿真用的基本部件库是由半导体厂家和EDA工具厂家共同提供的。系统设计工程师不必过多地关心门级和开关级的Verilog HDL语法现象。Verilog HDL语言中也有常量和变量之分。它们分别属于以上这些类型。下面就最常用的几种进行介绍。






常量




在程序运行过程中,其值不能被改变的量称为常量。下面首先对在Verilog HDL语言中使用的数字及其表示方式进行介绍。



一.数字型 

整数: 

在Verilog HDL中,整型常量即整常数有以下四种进制表示形式:

1) 二进制整数(b或B)

2) 十进制整数(d或D) 

3) 十六进制整数(h或H) 

4) 八进制整数(o或O) 

数字表达方式有以下三种: 

1) <位宽><进制><数字>这是一种全面的描述方式。

2) <进制><数字>在这种描述方式中,数字的位宽采用缺省位宽(这由具体的机器系统决定,但至少32位)。

3) <数字>在这种描述方式中,采用缺省进制十进制。在表达式中,位宽指明了数字的精确位数。例如:一个4位二进制数的数字的位宽为4,一个4位十六进制数的数字的位宽为16(因为每单个十六进制数就要用4位二进制数来表示)。见下例: 8'b10101100 //位宽为8的数的二进制表示, 'b表示二进制 8'ha2 //位宽为8的数的十六进制,'h表示十六进制。

 

x和z值: 

在数字电路中,x代表不定值,z代表高阻值。一个x可以用来定义十六进制数的四位二进制数的状态,八进制数的三位,二进制数的一位。z的表示方式同x类似。z还有一种表达方式是可以写作?。在使用case表达式时建议使用这种写法,以提高程序的可读性。见下例: 4'b10x0 //位宽为4的二进制数从低位数起第二位为不定值 4'b101z //位宽为4的二进制数从低位数起第一位为高阻值 12'dz //位宽为12的十进制数其值为高阻值(第一种表达方式) 12'd? //位宽为12的十进制数其值为高阻值(第二种表达方式) 8'h4x //位宽为8的十六进制数其低四位值为不定值。


负数: 

一个数字可以被定义为负数,只需在位宽表达式前加一个减号,减号必须写在数字定义表达式的最前面。注意减号不可以放在位宽和进制之间也不可以放在进制和具体的数之间。见下例: -8'd5 //这个表达式代表5的补数(用八位二进制数表示) 8'd-5 //非法格式。

 

下划线(underscore_): 

下划线可以用来分隔开数的表达以提高程序可读性。但不可以用在位宽和进制处,只能用在具体的数字之间。

见下例: 

16'b1010_1011_1111_1010 //合法格式 

8'b_0011_1010 //非法格式 


当常量不说明位数时,默认值是32位,每个字母用8位的ASCII值表示。 例: 

10=32’d10=32’b1010 21

1=32’d1=32’b1 

-1=-32’d1=32’hFFFFFFFF 

‘BX=32’BX=32’BXXXXXXX…X 

“AB”=16’B01000001_01000010



二.参数(Parameter)型 

在Verilog HDL中用parameter来定义常量,即用parameter来定义一个标识符代表一个常量,称为符号常量,即标识符形式的常量,采用标识符代表一个常量可提高程序的可读性和可维护性。parameter型数据是一种常数型的数据,其说明格式如下:

parameter 参数名1=表达式,参数名2=表达式, …, 参数名n=表达式;

parameter是参数型数据的确认符,确认符后跟着一个用逗号分隔开的赋值语句表。在每一个赋值语句的右边必须是一个常数表达式。也就是说,该表达式只能包含数字或先前已定义过的参数。见下例:

parameter msb=7; //定义参数msb为常量7 parameter e=25, f=29; //定义二个常数参数 parameter r=5.7; //声明r为一个实型参数 parameter byte_size=8, byte_msb=byte_size-1; //用常数表达式赋值 parameter average_delay = (r+f)/2; //用常数表达式赋值

参数型常数经常用于定义延迟时间和变量宽度。在模块或实例引用时可通过参数传递改变在被引用模块或实例中已定义的参数。下面将通过两个例子进一步说明在层次调用的电路中改变参数常用的一些用法。

module Decode(A,F);
parameter Width=1, Polarity=1;   ……………  endmodule 
module Top;
wire[3:0] A4; wire[4:0] A5; wire[15:0] F16; wire[31:0] F32; Decode #(4,0) D1(A4,F16); Decode #(5) D2(A5,F32); endmodule

引用Decode实例时,D1,D2的Width将采用不同的值4和5,且D1的Polarity将为0。可用例子中所用的方法来改变参数,即用 #(4,0)向D1中传递 Width=4,Polarity=0; 用#(5)向D2中传递Width=5,Polarity仍为1。




Module Test;
wire W; Top T ( ); emdmodule
module Top;
wire W Block B1 ( ); Block B2 ( ); endmodule
module Block;
Parameter P = 0; endmodule
module Annotate;
defparam Test.T.B1.P = 2, Test.T.B2.P = 3; endmodule

上面是一个多层次模块构成的电路,在一个模块中改变另一个模块的参数时,需要使用defparam命令。
Day 1 就到这里,Day 2 继续开始变量,大侠保重,告辞。

图片

END

福利】:QQ交流群173560979,进群备注名字+学校/企业。
淘宝店铺:https://shop588964188.taobao.com
论坛网址:www.sxznfpga.com
叁芯智能FPGA课程

往期精选 

图片 
图片 

【免费】FPGA工程师人才招聘平台

FPGA人才招聘,企业HR,看过来!

系统设计精选 | 基于FPGA的实时图像边缘检测系统设计(附代码)

基于原语的千兆以太网RGMII接口设计

时序分析理论和timequest使用_中文电子版

求职面试 | FPGA或IC面试题最新汇总篇

FPGA时序分析及约束专题课,Quartus、ISE、Vivado全涉及

FPGA图像处理专题课,Quartus、ISE、Vivado全涉及

资料汇总|FPGA软件安装包、书籍、源码、技术文档…(2024.11.14更新)


图片

图片

FPGA技术江湖广发江湖帖

无广告纯净模式,给技术交流一片净土,从初学小白到行业精英业界大佬等,从军工领域到民用企业等,从通信、图像处理到人工智能等各个方向应有尽有,QQ微信双选,FPGA技术江湖打造最纯净最专业的技术交流学习平台。


FPGA技术江湖微信交流群

图片

加群主微信,备注姓名+学校/公司+专业/岗位进群


FPGA技术江湖QQ交流群

图片

备注姓名+学校/公司+专业/岗位进群

图片


FPGA技术江湖 任何技术的学习就好比一个江湖,对于每一位侠客都需要不断的历练,从初入江湖的小白到归隐山林的隐世高人,需要不断的自我感悟自己修炼,让我们一起仗剑闯FPGA乃至更大的江湖。
评论 (0)
  • 引言在智能语音技术飞速发展的今天,语音交互已成为消费电子、智能家居、工业控制等领域的标配功能。传统的ISD系列录音芯片虽应用广泛,但其高成本与功能局限性逐渐难以满足市场对高性价比、高灵活性的需求。推出的WT2000P录音语音芯片,凭借其卓越性能、低功耗设计及高度可定制化特性,成为ISD系列芯片的理想替代方案,助力开发者突破产品创新瓶颈。一、WT2000P产品概述WT2000P是一款专为嵌入式语音场景设计的多功能录音芯片,采用ESOP8封装,体积小巧(尺寸仅4.9mm×3.9mm),集成度高,支持
    广州唯创电子 2025-04-25 08:44 61浏览
  •   通用装备论证与评估系统平台解析   北京华盛恒辉通用装备论证与评估系统平台是服务军事装备全生命周期管理的综合性信息化平台,通过科学化、系统化手段,实现装备需求论证、效能分析等核心功能,提升装备建设效益。   应用案例   目前,已有多个通用装备论证与评估系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润通用装备论证与评估系统。这些成功案例为通用装备论证与评估系统的推广和应用提供了有力支持。   一、系统分层架构   (一)数据层   整合装备性能、作战、试验等多源异
    华盛恒辉l58ll334744 2025-04-24 16:14 153浏览
  • 2025-4-25全球信息报告出版商Global Info Research(环洋市场咨询)发布了【2025年全球市场高介电常数材料总体规模、主要生产商、主要地区、产品和应用细分研究报告】,报告主要调研全球高介电常数材料总体规模、主要地区规模、主要生产商规模和份额、产品分类规模、下游主要应用规模以及未来发展前景预测。统计维度包括销量、价格、收入,和市场份额。同时也重点分析全球市场主要厂商(品牌)产品特点、产品规格、价格、销量、销售收入及发展动态。历史数据为2020至2024年,预测数据为2025
    用户1745398400862 2025-04-25 08:48 78浏览
  • 最近,途虎养车发布的2024年财报数据,可谓相当吸睛。全年营收达到147.59亿元,同比增长8.5%,这个数字直观地展现了途虎在市场上的强大吸金能力,在行业里稳稳占据前列。利润方面同样出色,毛利37.46亿元,毛利率提升0.7个百分点至25.4%;经调整净利润6.24亿元,同比增长 29.7%,经营利润同比更是增长104%至3.31亿元,盈利能力显著增强,这样的利润增长幅度,在同行业中十分亮眼。在用户规模上,途虎养车同样成绩斐然。累计注册用户近1.4亿,同比增长20.4%,交易用户数达2410万
    用户1742991715177 2025-04-24 19:12 56浏览
  •   基于 GIS 的任务规划与决策系统平台解析   北京华盛恒辉基于 GIS 的任务规划与决策系统平台是空间信息技术与决策科学融合的成果,通过地理空间数据处理与分析,为复杂任务提供科学智能的规划决策支持。以下从架构、功能、技术、应用及趋势展开解读。   应用案例   目前,已有多个基于 GIS 的任务规划与决策系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润基于 GIS 的任务规划与决策系统。这些成功案例为基于 GIS 的任务规划与决策系统的推广和应用提供了有力支持
    华盛恒辉l58ll334744 2025-04-25 15:47 38浏览
  •   无人机电磁干扰对抗演练平台系统解析   无人机电磁干扰对抗演练平台系统是提升无人机在复杂电磁环境下作战能力的关键工具,通过模拟实战场景,检验无人机系统的抗干扰性能与任务执行能力。以下从系统架构、技术实现、应用场景及发展趋势展开解读。   应用案例   目前,已有多个无人机电磁干扰对抗演练平台在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润无人机电磁干扰对抗演练平台。这些成功案例为无人机电磁干扰对抗演练平台的推广和应用提供了有力支持。   一、核心系统组成与功能   (一
    华盛恒辉l58ll334744 2025-04-25 16:55 13浏览
  • 引言:语音交互的智能化跃迁在全球化与智能化深度融合的今天,语音交互设备的应用场景已从单一提示功能向多语言支持、情感化表达及AI深度交互演进。传统离线语音方案受限于语种单一、存储容量不足等问题,而纯在线方案又依赖网络稳定性,难以满足复杂场景需求。WT3000A离在线TTS方案,通过“本地+云端”双引擎驱动,集成16国语种、7种方言切换、AI大模型对话扩展等创新功能,重新定义语音提示器的边界,为智能硬件开发者提供更灵活、更具竞争力的语音交互解决方案。一、方案核心亮点离在线双模融合,场景全覆盖离线模式
    广州唯创电子 2025-04-25 09:14 66浏览
  • ESD(Electrostatic Discharge,静电放电)二极管是一种专门用于保护电子设备免受静电放电或瞬态电压冲击的半导体器件。以下是其特点、优势和应用场景的详细说明:一、ESD二极管的特点快速响应响应时间极短(通常小于 1纳秒),能迅速将ESD能量旁路到地,避免电路受损。低钳位电压在ESD事件中,钳位电压远低于被保护器件的耐受阈值(例如 <30V),确保敏感元件不被击穿。低电容典型电容值低至 0.5pF~5pF,适合高频信号线路(如USB 3.0、
    时源芯微 2025-04-25 16:17 8浏览
  •   航空兵训练与战术对抗仿真平台系统解析   北京华盛恒辉航空兵训练与战术对抗仿真平台系统是现代军事训练的关键工具,借助计算机技术构建虚拟战场,支持多兵种协同作战模拟,为军事决策、训练及装备研发提供科学依据。   应用案例   目前,已有多个航空兵训练与战术对抗仿真平台在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润航空兵训练与战术对抗仿真平台。这些成功案例为航空兵训练与战术对抗仿真平台的推广和应用提供了有力支持。   一、系统架构与核心功能   系统由模拟器、计算机兵力生
    华盛恒辉l58ll334744 2025-04-24 16:34 156浏览
  •   海上训练与保障调度指挥平台系统解析   北京华盛恒辉海上训练与保障调度指挥平台系统是现代海上作战训练的核心枢纽,融合信息技术、GIS、大数据及 AI 等前沿技术,旨在实现海上训练高效组织、作战保障科学决策。以下从架构功能、应用场景、系统优势及发展挑战展开解读。   应用案例   目前,已有多个海上训练与保障调度指挥平台在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润海上训练与保障调度指挥平台。这些成功案例为海上训练与保障调度指挥平台的推广和应用提供了有力支持。   一
    华盛恒辉l58ll334744 2025-04-24 15:26 139浏览
  • 为通过金融手段积极推进全球绿色发展,国际金融论坛(IFF)于2020年创立了“IFF全球绿色金融奖”,旨在对全球绿色金融领域取得突出成绩的机构及创新性的解决方案进行表彰和奖励。该奖项依托IFF“高层次、高水平、国际化”一流智库资源优势,积极促进绿色金融领域的国际交流合作和创新实践,助力联合国可持续发展目标的实现。“IFF全球绿色金融奖”重点关注和鼓励那些促进经济增长模式转型、防治环境污染、应对气候变化,以及致力于提高能效水平、强化节能减排实效的绿色金融创新解决方案。该奖项面向全球,是对政策创新、
    华尔街科技眼 2025-04-24 20:43 34浏览
  • 随着轻薄笔记本的普及,再加上电竞玩家对于高画质音视频体验的需求日益高涨,如何让轻薄笔记本在兼顾轻便携带性的同时,还能提供足以支持3A(AAA/Triple-A game)大作的良好运算性能,便成为各家品牌急欲突破的共同难题。然而,对于主打轻巧便携的轻薄笔记本而言,若要内置独立显卡,势必要先突破空间受限的瓶颈,同时还需解决散热问题,确实难以兼顾两全!对此,“Thunderbolt”与“OCuLink”这两项技术应运而生。用户可以通过这两种传输接口,再搭配外接显卡盒(eGPU)及高性能显卡(如NVI
    百佳泰测试实验室 2025-04-24 17:56 50浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦