Category: Uncategorized

Reading Note of “SystemVerilog for Design” (Chapter 11: A Complete Design Modeled with SystemVerilog)

Interesting part: how to implement a latch-based LUT with SystemVerilog interface // // implement LUT (basically an SRAM/Register File with interface in SV) interface if_look_up_table;   parameter int ADDR_SIZE = 8; parameter int ADDR_RANGE = 1 << ADDR_SIZE; parameter type DATA_TYPE = logic; // the bit-cell's type could be reconfigurable   DATA_TYPE mem [0:ADDR_RANGE-1];   … Continue reading Reading Note of “SystemVerilog for Design” (Chapter 11: A Complete Design Modeled with SystemVerilog)

Advertisements

Reading Note of “SystemVerilog for Design” (Chapter 10: SystemVerilog Interfaces)

Concepts How Verilog models connects between blocks Directly on physical connections in actual hardware level Disadvantage Port connection must be duplicated in several modules Communication protocols must be duplicated also Duplication leads to mistakes that is hard to debug Changes in spec involves lots of modification Details of connection must be defined in early design … Continue reading Reading Note of “SystemVerilog for Design” (Chapter 10: SystemVerilog Interfaces)

智能用电的革命

一场涉及普通消费者的智能用电革命正在悄然发生。加州政府近年来努力推动这项能源节约革命,在近三年来取得了快速的进步,得到了能源公司和电器制造商的广泛支持。 Prosumer的概念 普通家庭以往是以单一的电力消费者出现的。但是近年来由于太阳能发电设备的推广力度不断加大,得到了大量消费者的欢迎和支持,催生了prosumer的概念,即producer + consumer。通过政府大力支持的贷款在自家屋顶安装太阳能板,并将发出的电力上网卖给电力公司,同时获得最低单价的用电费用。我的同事中就有不少安装了,或者正在考虑安装这样的设备,表明这样的project即使对于普通的三口或四口之家都是有利可图的。 智能用电 电网消费有峰有谷,这样的波动由于各个小区域的消费习惯、天气变化等密切相关,而且往往变化迅速,即以分钟为单位反复变化。但是电网负载波动对于电网设备而言是有害的,所以电力公司有非常强烈的意愿通过某些技术手段来消弭这样的波动。这样就提出了"智能用电"的概念,也就是通过对普通的电器进行联网和远程自动控制,来调节小区域内部的用电波动。这样不仅能降低电网设备的负载,也能够有效利用能源,所以对于电力公司和政府决策者而言都是大有益处的。对于普通消费者而言,积极参与"智能用电"项目能够获得的利益来自于电力公司和政府政策补贴。 举例说明,热水器和烘干机之类的设备是耗电量大户,但是往往对于时效性要求不是很高。如果能够加入特定的芯片进行联网控制其功率,取代恒定的大功率输出,就能够起到平衡电网负载波动的左右。代价可能仅仅是将原有的工作时间延长一些而已。再者就是目前越来越普及的电动车。对于普通使用者而言,充电时间远远大于使用时间。如果在足够的充电时间内自动选择电网负载最低的时段进行充电就能够获得最低的电价。 另外的小事 加州一些城市的商业区或者大型shopping center开始自行安装一些电动车充电桩。这些充电桩在非高峰期(周末或者节假日)是免费的。这样就吸引一些开电动车的顾客来充电和消费。

Reading Note of “SystemVerilog for Design” (Chapter 6: SystemVerilog Procedural Blocks, Tasks and Functions)

"always" procedual block Verilog limitation "always" could be combinational or latched or sequential EDA tool must infer design intent from cotent, which might differ from the real intent SystemVerilog improvement New keywords: "always_comb" & "always_latch" & "always_ff" "always_comb" (adv. vs. "always @ *") NO need to specify sensitivity list, auto infer Eliminate the risk of … Continue reading Reading Note of “SystemVerilog for Design” (Chapter 6: SystemVerilog Procedural Blocks, Tasks and Functions)