Amp

verilog代码格式化工具

|▌冷眼眸甩不掉的悲伤 提交于 2020-08-18 08:51:24
[译]使用iStyle格式化Verilog代码 格式化 verilog 代码风格 发布于 2019-08-09 对博客平台有些失望,转语雀只当留档用了。 原文: Verilogでコード整形 安装 iStyle可以从GitHub上clone、make自行编译出可执行文件,也可以直接下载已编译好的可执行文件。这里都给出来。 Github https://github.com/thomasruss... 可执行文件 https://github.com/HayasiKei/... 格式化选项 以下是一些格式化时常用的选项及效果示例。 待格式化代码 reg [ 3 : 0 ] cnt; always @(posedge clk or posedge rst) begin if (rst) begin cnt<= 4 'h0; end else begin cnt<=cnt+ 4 'h1; end end --style ANSI style ./iStyle --style=ansi test.v reg [ 3 : 0 ] cnt; always @(posedge clk or posedge rst) begin if (rst) begin cnt<= 4 'h0; end else begin cnt<=cnt+ 4 'h1; end end Kernighan&Ritchie

华为IoT首席架构师王启军:全栈工程师“养成记”

好久不见. 提交于 2020-08-18 08:50:27
在王启军的公众号里,有一篇《My Team》的文章,里面记录了早年他所带团队成长的心得。 这个被他称为完美组合的团队,并不是来自大厂名企,彼时王启军给不起高待遇,团队核心成员中还有很多人是专科学历。 但就是这样一支团队,建立了 IaaS平台 ,搭建了私有云,云缓存,分布式文件中心……甚至还有自己的开发框架,工作流平台,配置中心,而彼时,是在2013年前后。 王启军在文章里写到: 给不起高薪,就挑选潜力股,用成长来吸引人。 最后,王启军确实也兑现了承诺,团队成员工作一年以上的,出去后薪酬基本都翻倍,并跳槽到国内知名互联网公司的不在少数。 如今,王启军已成为 华为云IoT首席架构师 ,尽管“捉襟见肘”开不起高薪的烦恼不再,但他认为挑战依旧,因为在云计算时代,很多颠覆性的工作正在等待他去做突破与创新。 拥抱开源,要做颠覆性的云 今天,全球正进入了一个开源的大时代。可以看到,目前全球软件行业有两个重要的趋势: (1)“软件现正在吞噬一切”,每一家公司都正在变成一软件公司; (2)“开源也在吞噬一切”,越来越多的公司都在使用和拥抱开源软件。 同样,对于开源的关注,也始终是王启军工作重心中的一部分。据他介绍,目前华为云很多产品线的目标都是希望做“颠覆性”的产品,而不是只考虑跟竞争对手持平。因为即便超越了对手,但是还是可能会输给时代。所以华为云的产品考虑必须长远。 在云的领域

龙芯的 UEFI 主板上,为使用 GPT 分区的硬盘,设置启动引导

只谈情不闲聊 提交于 2020-08-18 08:49:09
操作系统:Fedora,Debian,UOS,Kylin 适用架构:mips64el 在龙芯的 UEFI 主板上使用 GPT 分区安装完操作系统,如果不能启动,请执行以下步骤。 开机后,连续点摁del,进入UEFI界面。 选择第3项,Boot Manager。 选择最后1项,EFI Internal Shell。 5秒之内,快速摁esc键进入Shell。 在界面中。通过Page Up或Page Down上下翻页儿,查看Mapping table映射表,仔细查找EFI分区的编号,一般为FS0或FS1。 在Shell界面输入命令“FS0:”切换至EFI分区。 输入命令“ls”查看分区内的文件内容。寻找是否有“EFI”这个文件夹存在。 输入命令“edit startup.nsh ”,进入编辑状态。 输入BOOTMIPS.EFI文件所在的路径。比如“FS0:EFI\BOOT\BOOTMIPS.EFI”。 摁组合键ctrl+q后,提示保存,摁回车,再摁组合键ctrl+q后退出。 摁组合键ctrl+alt+del重启计算机。 在显示启动界面和shell界面后等待5秒钟。 系统将按照startup.nsh的设置开始引导。 来源: oschina 链接: https://my.oschina.net/chipo/blog/4318265

【开发者新手必看】一分钟带你了解HMS24个子服务!!

一世执手 提交于 2020-08-18 08:38:04
【HMS Core来了】 快速读懂 24个子服务( 持续更新中 ): HMS Core来了│线上快速身份验证服务,为用户身份认证保驾护航 HMS Core来了│安全检测服务,助您实现安全能力快速构建! HMS Core来了 | 华为快应用,原生体验“快”人一步 HMS Core来了│数字化版权管理,让珍爱的音影像作品传播更远 HMS Core来了| 近距离通信服务 体验近距离的美好 HMS Core来了丨华为定位服务, 开发者的“定”海神针 HMS Core来了丨HUAWEI Ads助力出海开发者商业成功 HMS Core来了 | 情景感知服务,助力打造智能化应用 HMS Core来了丨机器学习服务,极“智”体验 HMS Core 来了 | 钱包服务,打造All In One Wallet的数字生活方式 HMS Core来了 | 华为云空间服务,不止是存储 HMS Core 来了 | 统一扫码服务,“码”上揭秘! HMS Core来了 | 华为分析服务,打造应用的“最强大脑” HMS Core来了 | 华为游戏服务,让开发者专注于游戏创新 HMS Core来了 | 应用内支付,助力开发者创造更多商业价值 HMS Core来了 │ 推送服务,打动用户的首选触达渠道 HMS Core来了 | 华为帐号服务,让您的应用获取用户更简单! 【HMS 视频 课堂】5~10分钟 讲解:

C++ 九阴真经之线程间通信(消息队列)

我是研究僧i 提交于 2020-08-18 08:37:00
消息队列是线程间通信比较常用得方式,常用于解决经典模型生产者——消费者模型线程间得通信。 本文将结束基于C++标准库实现得消息队列,可以支持任意参数类型,任务参数数量。 为了方便后续线程池、异步队列得实现,这里提取了公共基类。 class QueueObject : public noncopyable { public: QueueObject() :m_bStop(false), m_nCapacity(MAX_QUEUE_CAPACITY) { } virtual ~QueueObject() { } void Stop() { m_bStop.store(true); m_condPop.notify_all(); // 唤醒所有线程执行 } //设置最大容量 void SetMaxCapacity(int nMax) { m_nCapacity = nMax; } //获取队列任务数量 virtual size_t GetTaskNum() = 0; bool IsStop() { return m_bStop; } protected: int m_nCapacity = 0; //队列最大容量 std::condition_variable_any m_condPush; //写入条件量 std::condition_variable_any m_condPop; /

进一步释放技术红利,阿里云推出全新内存增强型实例re6,性能提升30%

拜拜、爱过 提交于 2020-08-18 08:16:02
5月7日,国内最大云计算厂商阿里云宣布推出全新一代内存增强型实例,提供1:14.8超大内存比内存容量,满足内存型数据库如SAP HANA、Redis等应用,充分释放技术红利,帮助线下企业快速上云,完成数字化转型。 预约观看 产品详情 全新一代内存增强型实例re6采用Intel 最新CascadeLake 架构处理器,主频2.5GHz,睿频最高可达3.2GHz,相对于上一代性能最高提升30%以上。 全面上云已经成为趋势,越来越多的企业级用户选择云平台搭建自己的系统。从测试系统的迁移到生产系统搭建,从边缘业务到核心业务,云计算承担了越来越大的业务量,作为数字经济的“新基建”,阿里云也在快速迭代,为企业提供更优质的服务。 提供超大的单核内存容量:内存增强型实例是SAP用户上云不二之选 SAP HANA 是基于内存计算技术的高性能实时数据计算平台,将联机分析处理 (OLAP) 和联机事务处理 (OLTP) 整合到了单一的内存计算数据库中,这不仅消除了磁盘瓶颈,还提供了前所未有的高性能。 阿里云内存增强型实例re6几乎是为SAP用户量身打造的企业级实例产品,最高可以支持3TiB内存总容量,满足绝大部分企业用户的需求,在云计算的规模与弹性加持下,re6的稳定性全面超越线下一体机。同时,阿里云re6系列实例即将全部通过SAP HANA认证,支持包年包月、RI等付费模式

第七章-排序 希尔排序

房东的猫 提交于 2020-08-18 07:12:56
#include <stdio.h> #include "tool.h" /* 简单插入排序算法: 1.把待排序序列按相等的间隔分成多个子序列,然后分别子序列进行排序 2.开始间隔较大,在每轮排序后,逐步缩小间隔,直到间隔为1 最差时间复杂度:O(N^(3/2)) */ void shellSort(int a[], int len) { int s, D, P, i; int sw[] = {41,19, 5,2,1,0 }; for (s = 0; sw[s] >= len; s++) ;//初始增量不能超过待排序序列长度 for (D = sw[s]; D > 0; D=sw[++s]) {//每个间隔执行一轮排序,直到间隔为1 //执行插入排序 for (P = D; P < len; P++) { int tmp = a[P]; for (i = P; i >= D && a[i - D] > tmp; i -= D) { a[i] = a[i - D]; } a[i] = tmp; } } } int main() { int a[10] = { 9,1,8,5,7,6,4,3,10,2 }; int len = sizeof(a) / sizeof(a[0]); printf("排序前: "); printfArray(a, len); shellSort(a,

什么时候应该使用转义而不是encodeURI / encodeURIComponent?

无人久伴 提交于 2020-08-18 06:52:06
问题: When encoding a query string to be sent to a web server - when do you use escape() and when do you use encodeURI() or encodeURIComponent() : 在对要发送到Web服务器的查询字符串进行编码时-什么时候使用 escape() 以及什么时候使用 encodeURI() 或 encodeURIComponent() : Use escape: 使用转义: escape("% +&="); OR 要么 use encodeURI() / encodeURIComponent() 使用encodeURI()/ encodeURIComponent() encodeURI("http://www.google.com?var1=value1&var2=value2"); encodeURIComponent("var1=value1&var2=value2"); 解决方案: 参考一: https://stackoom.com/question/JlU/什么时候应该使用转义而不是encodeURI-encodeURIComponent 参考二: https://oldbug.net/q/JlU/When-are-you-supposed-to-use

使用发明者量化交易平台扩展API实现TradingView报警信号交易

删除回忆录丶 提交于 2020-08-18 06:49:31
B站视频链接 发明者量化交易平台扩展API最近升级了,升级支持了直接访问模式,这样就可以轻松实现TradingView报警信号发送给发明者量化交易平台机器人实现自动交易。如果小伙伴还不知道扩展API为何物,听我细细道来。 发明者量化交易平台扩展API 发明者API文档相关部分链接 扩展API的主要作用是给程序化操作发明者量化交易平台上的各种功能提供接口,例如同时批量启动机器人,定时机器人启动、停止,读取机器人信息详情等。我们使用发明者量化交易平台扩展API实现TradingView报警信号交易这个需求计划只用扩展API中的 CommandRobot(RobotId, Cmd) 接口即可,这个接口可以给指定ID的机器人发送交互指令,机器人接收到指令即可执行对应操作(例如下单买入、卖出等)。 要使用扩展API,首先需要创建自己的发明者账号的 API KEY : API KEY 秘钥由 access key 和 secret key 组成, API KEY 即程序化操作发明者量化交易平台的钥匙,所以一定要妥善保管,切勿泄露。 扩展API的直接访问模式 直接访问模式是指把 API KEY 直接写在URL的Query中,例如访问发明者量化交易平台扩展API的URL可以写成: https : //www.fmz.com/api/v1?access_key=xxx&secret_key=yyyy

@Pointcut()的execution、@annotation等参数说明

↘锁芯ラ 提交于 2020-08-18 06:42:44
AOP的基本概念 Advice(通知、切面): 某个连接点所采用的处理逻辑,也就是向连接点注入的代码, AOP在特定的切入点上执行的增强处理。 @Before : 标识一个前置增强方法,相当于BeforeAdvice的功能. @After: final增强 ,不管是抛出异常或者正常退出都会执行. @AfterReturning: 后置增强,似于AfterReturningAdvice, 方法正常退出时执行. @AfterThrowing: 异常抛出增强,相当于ThrowsAdvice. @Around : 环绕增强,相当于MethodInterceptor. JointPoint(连接点):程序运行中的某个阶段点,比如方法的调用、异常的抛出等。 Pointcut(切入点): JoinPoint的集合,是程序中需要注入Advice的位置的集合,指明Advice要在什么样的条件下才能被触发,在程序中主要体现为书写切入点表达式。 Advisor(增强): 是PointCut和Advice的综合体,完整描述了一个advice将会在pointcut所定义的位置被触发。 @Aspect (切面): 通常是一个类的注解,里面可以定义切入点和通知 AOP Proxy:AOP框架创建的对象,代理就是目标对象的加强。Spring中的AOP代理可以使JDK动态代理,也可以是CGLIB代理,前者基于接口