当前位置: 首页 > news >正文

On-Chip-Network之router微架构的物理实现

Low-Power Microarchitecture

        自20世纪90年代以来,功耗一直是嵌入式芯片和高性能芯片面临的一个挑战。自2000年代中期以来,它已经成为大多数设计的主要约束。多核解决了功耗问题,由此产生的communication substrate,namely the on-chip network,对多核的总功耗起着积极的作用——both dynamic and leakage。

        图6 - 18a给出了一个最先进的mesh router和四个VCs的功率分布。这些数字来自32nm的芯片。在低负载时,buffer和other state(VCs和credits)的动态功耗主要是由clocked latches造成的,而不是流量本身。在饱和状态下(即高负载状态),buffer的贡献为55%的动态功率,而交crossbar and links贡献34%。静态功耗在低负载时占router总功耗的75%以上,在高负载时占53%。 

        在本节中,我们讨论acrosson-chipnetworks使用的降低功耗的技术。关于core和cache使用的低功耗技术的更详细描述,请参阅计算机体系结构技术的综合讲座。

 Dynamic Power

        动态功耗的方程是,其中α是activity factor,C是capacitance being switched,V是工作电压,f是工作频率。为了降低功耗,有两类技术。

  • 第一种方法通过动态降低V和f来降低功耗,
  • 而第二种方法通过动态降低a和C来降低功耗。

DVFS

        Dynamic voltage and frequency scaling(DVFS), 动态电压频率调节是目前最常用的降低数字电路功耗的设计技术。DVFS可应用于on-chip networks,其思想是在不影响整体性能的前提下,使流量较少的路由器工作在较低的电压频率状态。

        将DVFS应用于on-chip network结构的两个关键挑战如下。

  • 对于multiple voltage-frequency islands,bi-synchronous FIFOs需要在每对不同电压岛的接口上使用,这带来了额外的延迟。
  • 现有方案大多假设the use of multiple supply lines for accessing different voltages。然而,多电压轨的使用需要芯片外的多个电压转换器,以及多个配电网络的面积开销。high bandwidth integrated voltage regulators的引入可以通过允许快速(sub 50 ns)电压跃迁来缓解这个问题。

        由于与tile/core 相关联的on-chip network不仅服务于从该core注入的flits,而且服务于来自不同core的flits,因此片上网络结构的DVFS策略必须与内核的DVFS策略进行不同的处理。

        现有的片上网络DVFS策略研究主要是利用average queue utilization、average return time to memory requests等静态网络参数来决定router新的V-F (voltage-frequency)状态。通常,DVFS控制器将执行以下任务:监控合适的网络参数,根据先前的状态和目标值计算状态反馈值,并更新V-F状态。本章后面将讨论一些最近关于片上网络DVFS的论文。

Power-Efficient Designs

        第二类技术试图通过减少电容或switching activety来降低功耗。

        通过减小effective capacitance being switched,可以降低片上网络的动态功耗。由于线电容比栅电容大得多,因此线电容占网络功率的主导地位。

        在这方面已经研究了低摆幅和均衡链路形式的节能信令。router的功耗也可以通过减少流水线阶段的数量和优化buffer、crossbar和arbiter circuits/micro architecture来降低。例如:

  • 在实现缓冲区时,sram比触发器和register files更节能
  • 而mesh风格的crossbar通常比基于mux的crossbar更高效。
  • crossbar可以进一步segmented or designed with low-swing links,以减少遍历期间的功耗。
  • 复杂的arbiters可以拆分为多个简单的仲裁器,以进一步降低功耗。

        降低switching activity是降低动态功耗的另一种技术。Clock gating is a popular method to reduce the amount of switching activity of latches between inactive circuits。例如,在图6 - 18a中,低负载时的动态功耗主要是时钟造成的,而不是实际流量,这为降低功耗提供了机会。从一个router发送到另一个router的比特的有效编码也可以被利用来减少bit-toggles的数量,从而减少动态功耗。

 Leakage  Power

        在亚纳米技术中,晶体管不再是理想的switches,即使在“关断”时也会漏电流。这导致即使在低活动或无活动期间也会消耗高功率。如图6.18a所示,在现代技术中,片上网络中的泄漏功耗对总功耗有显著影响。原因是大量的锁存器/触发器/ sram用于实现缓冲区、输入VC状态和输出credit状态。

Power-Gating.

        Leakage power可以通过power gating来减轻。它是当今across chips使用的标准技术。在本书中,我们不会深入讨论电路细节以及通过添加电源门控晶体管来创建功率域的影响。相反,我们将列出一些片上网络电源门控解决方案需要担心的挑战。

  • Whatshould be the granularity of power-domains?

        片上网络的power-domain可能是router中的各种模块(input ports, arbiters,  crossbar),或每个router本身,或整个片上网络。

        原则上,细粒度的power-domain将是最有效的,但将power-domain电路添加到数百个模块并控制它们是不实际的。当今大多数商用芯片将整个片上网络视为一个功率域。

  • How to decide which routers to turn on/off

        如果连接到router的tiles处于活动状态,则必须非常频繁地唤醒router,从而增加了大量的latency overhead。此外,关闭某些router可能导致某些关键IP块,例如memory controller,变得不可访问,这是不允许的,而电源管理控制器也需要特别处理一些事情。

  • Howto handle deadlocks on irregular topologies

        关闭某些router会使底层拓扑变得不规则;这可能会导致路由死锁,因为某些路径可能变得不可访问,迫使flit使用导致循环依赖的其他路径。

    

    一些最近关于片上网络电源门控的论文将在本章后面的参考书目中进行讨论。

后续还有一些Router floorplanning相关的内容,此处不做描述;

相关文章:

On-Chip-Network之router微架构的物理实现

Low-Power Microarchitecture 自20世纪90年代以来,功耗一直是嵌入式芯片和高性能芯片面临的一个挑战。自2000年代中期以来,它已经成为大多数设计的主要约束。多核解决了功耗问题,由此产生的communication substrate,namely the on…...

学习threejs,使用canvas更新纹理

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️Texture 贴图 二、&#x1…...

CSS 选择器的优先级

一、基本概念 CSS 选择器的优先级决定了在样式冲突时,哪个样式规则将被应用到 HTML 元素上。通过理解 CSS 选择器的优先级,可以更好地控制网页元素的样式,避免样式冲突。 二、优先级计算规则 1. 内联样式 内联样式具有最高的优先级。 &l…...

如何将python项目导出为docker镜像

如何将python项目导出为docker镜像 前提条件步骤 1: 创建并准备 Python 项目步骤 2: 创建 `setup.py`步骤 3: 打包项目步骤 4: 创建 Dockerfile步骤 5: 构建 Docker 镜像步骤 6: 运行 Docker 容器步骤 7: 保存修改并继续开发总结要将修改后的Python代码导出为 .tar.gz 格式,并…...

微信 创建小程序码-有数量限制

获取小程序码:小程序码为圆图,有数量限制。 目录 文档 接口地址 功能描述 注意事项 请求参数 对接 获取小程序码 调用获取 小程序码示例 总结 文档 接口地址 https://api.weixin.qq.com/wxa/getwxacode?access_tokenaccess_token 功能描述 …...

桶排序(代码+注释)

#include <stdio.h> #include <stdlib.h>// 定义桶的结构 typedef struct Bucket {int* data; // 动态数组int count; // 当前存储的元素个数int capacity; // 桶的容量 } Bucket;// 初始化桶 void InitBucket(Bucket* bucket) {bucket->capacity 10; // 初…...

Python从入门到入狱

Python是从入门到入狱&#xff1f;这个充满调侃意味的说法在程序员圈子里流传甚广。表面看&#xff0c;它似乎是在嘲笑这门语言从简单易学到深陷麻烦的巨大反差&#xff0c;实际上却隐藏着很多值得深思的问题。要解读这个话题&#xff0c;得从Python的特点、使用场景以及潜在风…...

图像模糊处理

图像模糊处理 C语言实现C实现Java实现Python实现 &#x1f490;The Begin&#x1f490;点点关注&#xff0c;收藏不迷路&#x1f490; 给定n行m列的图像各像素点的灰度值&#xff0c;要求用如下方法对其进行模糊化处理&#xff1a; 1 四周最外侧的像素点灰度值不变&#xff1b…...

全面UI组件库Telerik 2024 Q4全新发布——官方宣布支持.NET 9

Telerik DevCraft包含一个完整的产品栈来构建您下一个Web、移动和桌面应用程序。它使用HTML和每个.NET平台的UI库&#xff0c;加快开发速度。Telerik DevCraft提供最完整的工具箱&#xff0c;用于构建现代和面向未来的业务应用程序&#xff0c;目前提供UI for ASP.NET MVC、Ken…...

请求响应:常见参数接收及封装(Json参数及路径参数)

Json参数 Json格式的数据具有轻量级、易于阅读和编写、易于解析等诸多优点。在前后端交互时&#xff0c;大部分情况下请求体中的数据会以JSON格式进行传递。前端的请求在请求体中携带了Json格式数据&#xff0c;后端程序需要对其进行解析并封装使用&#xff0c;而接收Json参数…...

Doge东哥wordpress主题

Doge东哥wordpress主题是一款专为中小型企业设计的WordPress外贸网站模板&#xff0c;它以其现代、专业且用户友好的界面&#xff0c;为企业提供了一个展示产品和服务的理想平台。以下是对该模板的详细描述&#xff1a; 首页设计概览 首页的设计简洁而不失大气&#xff0c;顶…...

深度学习常用指标

1. 混淆矩阵&#xff08;误差矩阵&#xff09; 2. 准确率&#xff08;overall accuracy&#xff09; 代表了所有预测正确的样本占所有预测样本总数的比例 这里分类正确代表了正样本被正确分类为正样本&#xff0c;负样本被正确分类为负样本 3. 平均精度&#xff08;average…...

AMR移动机器人赋能制造业仓储自动化升级

在当今制造业的激烈竞争中&#xff0c;智能化、数字化已成为企业转型升级的关键路径。一家制造业巨头&#xff0c;凭借其庞大的生产体系和多个仓库资源&#xff0c;正以前所未有的决心和行动力&#xff0c;在制造业智能化浪潮中勇立潮头&#xff0c;开启了降本增效的新篇章。这…...

显卡(Graphics Processing Unit,GPU)比特币挖矿

1. 比特币挖矿基本原理 比特币挖矿是通过参与比特币网络的共识机制——工作量证明&#xff08;Proof of Work, PoW&#xff09; 来完成的。具体来说&#xff0c;矿工通过不断尝试不同的哈希值&#xff0c;以解决一个难度逐渐增大的数学问题&#xff0c;从而验证交易并获得比特…...

11.7【miniob】【debug】

这里的vector是实际值&#xff0c;而relation是指针&#xff0c;所以要解引用&#xff0c;*$1&#xff0c;并在最后调用其析构函数 emplace_back 和 push_back 都是用于在容器&#xff08;如 std::vector&#xff09;的末尾添加元素的方法&#xff0c;但它们的工作方式有所不同…...

力扣第89题 格雷编码

题目描述 格雷编码序列是一个二进制数字序列&#xff0c;其中的每两个相邻的数字只有一个二进制位不同。给定一个整数 n&#xff0c;表示格雷编码的位数&#xff0c;要求返回 n 位的格雷编码序列。 示例 1 输入&#xff1a; n 2输出&#xff1a; [0, 1, 3, 2]解释&#x…...

ros sensor_msgs::Imu详细介绍 Eigen::Vector3d 详细介绍

1.ros sensor_msgs::Imu详细介绍 sensor_msgs::Imu 是 ROS&#xff08;Robot Operating System&#xff09;中用于表示惯性测量单元&#xff08;IMU&#xff09;数据的消息类型。IMU 是一种传感器&#xff0c;通常用于测量物体的线性加速度、角速度和方向信息。以下是 sensor_…...

【ArcGIS微课1000例】0133:二维建筑物依据高度生成三维模型

拓展阅读:【ArcGIS Pro微课1000例】0032:创建具有指定高程Z值的矢量数据 文章目录 一、二维面要素拉伸实现三维显示二、依据高度实现要素转3D一、二维面要素拉伸实现三维显示 打开ArcScene软件,加载实验配套数据0133.rar中的建筑物.shp数据,如下图: 数据属性表中的Z为建筑…...

虚拟内存的意义

1.什么是虚拟内存 虚拟内存的基本原理是将物理内存与磁盘空间组合使用&#xff0c;将正在执行的程序的部分数据和代码加载到物理内存中&#xff0c;而不是全部加载。当程序需要访问未加载到内存的部分时&#xff0c;操作系统会将相关数据从磁盘中加载到内存中 2.为了解决什么…...

h5 sqlite 操作封装

参考文档 错误码 // 数据库名称 const namesjk "sl" // 存储路径 const path _doc/${name}.db/** 基本操作* 查询数据库连接状态 isOpenDatabase * 无参数* 返回 true false* * * 关闭数据库 closeDatabase* 无参数* Promise 成功/失败* * * …...

Git 详解

Git 详解 Git 是一个分布式版本控制系统&#xff0c;用于高效地管理项目代码的版本历史。它是目前最流行的版本控制工具之一&#xff0c;广泛应用于软件开发领域。Git 的分布式架构允许开发者在本地进行代码的版本管理&#xff0c;并与远程仓库同步&#xff0c;实现团队协作。…...

Redis设计与实现第17章 -- 集群 总结3(ASK错误、复制与故障转移、消息)

17.5 ASK错误 在进行重新分片期间&#xff0c;源节点向目标节点迁移一个槽的过程中&#xff0c;可能会出现这样一种情况&#xff1a;属于被迁移槽的一部分键值对保存在源节点里面&#xff0c;而另一部分键值对则保存在目标节点里面。当客户端向源节点发送一个与数据库键有关的…...

支持向量机(SVM)的解析与应用:从封闭解到时代演变 (中英双语)

中文版 支持向量机&#xff08;SVM&#xff09;的解析与应用&#xff1a;从封闭解到时代演变 什么是支持向量机&#xff08;SVM&#xff09;&#xff1f; 支持向量机&#xff08;Support Vector Machine, SVM&#xff09;是一种经典的监督学习算法&#xff0c;用于解决分类和…...

Linux 密码学的基本知识与应用技术

一、基本知识 &#xff08;一&#xff09;加密算法 • 对称加密算法 • 原理&#xff1a;对称加密使用相同的密钥进行加密和解密。例如&#xff0c;在Linux中常用的AES&#xff08;高级加密标准&#xff09;算法&#xff0c;发送方和接收方都需要持有相同的密钥。假设要加密…...

【力扣】2094.找出3为偶数

思路 方法一&#xff1a;使用Set集合 1.首先是三层for循环&#xff0c;遍历&#xff0c;并且遇到不满足的情况&#xff0c;便跳过&#xff0c;继续计算。不如前导为0,以及遍历同一个数组下标的情况 2.使用Set集合来确保答案是唯一的&#xff0c;使用桶来标记也是可以的 3.但是…...

【信息系统项目管理师】【综合知识】【备考知识点】第十四章 项目沟通管理

【移动端浏览】☞【信息系统项目管理师】第十四章 项目沟通管理 第十四章 项目沟通管理 &#xff08;项目沟通管理&#xff09;定义 项目沟通管理是确保及时、正确地产生、收集、分发、存储和最终处理项目信息所需的过程。 &#xff08;项目沟通管理&#xff09;组成部分 (…...

CTFshow黑盒测试刷题

web380 先扫目录 打开 报错了 先用伪协议去查看源码 之前扫到有flag.php 访问一下 就得到flag了 web381 查看一下源码 点击第三个css 藏在目录里面 web382 跟上题一样 不过访问这个页面是一个登录框 试一下弱口令 最后是admin admin888 就进去了 web383 进入这个后台 …...

抖音矩阵系统快速部署指南/抖音矩阵系统源码分发,短视频矩阵账号管理系统开发部署—

抖音矩阵系统的源码分发与短视频账号管理平台的开发部署&#xff0c;要求通过对接官方API来实现功能的拓展。当前开发的账号矩阵管理系统专注于提供一键式管理多个账户的能力&#xff0c;支持定时发布内容、自动化关键词生成以实现搜索引擎优化&#xff08;SEO&#xff09;和霸…...

windows文件下换行, linux上不换行 解决CR换行符替换为LF notepad++

html文件是用回车换行的&#xff0c;在windows电脑上&#xff0c;显示正常。 文件上传到linux服务器后&#xff0c;文件不换行了。只有一行。而且相关js插件也没法正常运行。 用notepad查看&#xff0c;显示尾部换行符&#xff0c;是CR&#xff0c;这就是原因。CR是不被识别的。…...

服务器数据恢复—硬盘掉线导致热备盘同步失败的RAID5阵列数据恢复案例

服务器存储数据恢复环境&#xff1a; 华为S5300存储中有12块FC硬盘&#xff0c;其中11块硬盘作为数据盘组建了一组RAID5阵列&#xff0c;剩下的1块硬盘作为热备盘使用。基于RAID的LUN分配给linux操作系统使用&#xff0c;存放的数据主要是Oracle数据库。 服务器存储故障&#…...

活着就好20411205

5号亲爱的朋友们&#xff0c;大家早上好&#xff01;&#x1f31e; 今天是5号&#xff0c;星期四&#xff0c;2024年12月的第五天&#xff0c;同时也是第49周的第四天&#xff0c;农历甲辰[龙]年十一月初一日。在这晨曦初露的美好时刻&#xff0c;愿第一缕柔和的阳光悄悄探进你…...

JDK8 下载与安装

下载安装包 官网下载 官网 找到适合的版本: 网盘下载 网盘链接 提取码: 6666 下载得到的安装包: 安装步骤 双击安装包开始安装. 安装路径不要有中文或者特殊符号如空格等. 更改安装路径: 跳出一个页面, 安装公共 JRE: 安装完成: 安装目录: 安装的公共 JRE: JDK 里面的 JR…...

基于MATLAB的信号处理工具:信号分析器

信号&#xff08;或时间序列&#xff09;是与特定时间相关的一系列数字或测量值&#xff0c;不同的行业和学科将这一与时间相关的数字序列称为信号或时间序列。生物医学或电气工程师会将其称为信号&#xff0c;而统计学家或金融定量分析师会使用时间序列这一术语。例如&#xf…...

Docker Compose 和 Kubernetes 之间的区别?

一、简介&#x1f380; 1.1 Docker Compose Docker Compose 是 Docker 官方的开源项目&#xff0c;负责实现对 Docker 容器集群的快速编排&#xff0c;可以管理多个 Docker 容器组成一个应用。你只需定义一个 YAML 格式的配置文件 docker-compose.yml &#xff0c;即可创建并…...

uniapp远程摄像头流界面上显示

用到的插件&#xff1a;dplayer、hls dplayer官网&#xff1a;dplayer 远程摄像头视频流格式&#xff1a;m3u8 可以用来测试的视频流&#xff08;有的用不了&#xff0c;多试几个&#xff0c;找可以用的&#xff09;&#xff1a;m3u8测试视频 安装hls&#xff0c;任选其一 npm…...

写译 Essay | Translation

单词 参考上篇 总结写译热点单词 | 50篇文章整理 | 手敲自用-CSDN博客 文化类词汇&#xff1a; 包括传统节日及相关活动&#xff0c;如春节(Spring Festival)、中秋节(Mid-Autumn Festival)等。 涵盖中国特色艺术和工艺品&#xff0c;如京剧(Peking opera)、中国画(traditi…...

知乎大数据开发面试题及参考答案

Java 两个线程之间是怎么通信的,属于哪种机制? 在 Java 中,线程间通信主要有以下几种方式: 共享变量:线程可以通过访问共享变量来进行通信。例如,一个线程修改一个共享的成员变量,另一个线程读取这个变量的值。但是这种方式需要注意线程安全问题。如果多个线程同时访问和…...

C# 绘制GDI红绿灯控件

C# 绘制GDI红绿灯控件 using System; using System.Windows.Forms; using System.Drawing;public class TrafficLightControl : Control {protected override void OnPaint(PaintEventArgs e){base.OnPaint(e);Graphics g e.Graphics;g.SmoothingMode System.Drawing.Drawin…...

网络安全-使用HTTP动词篡改的认证旁路

这个东西去年的安全扫描都没有&#xff0c;今天就扫出来了&#xff0c;非常奇怪的一个东西。好吧&#xff0c;找资料找原因。结果可能应为搜索名词的原因&#xff0c;这个问题在群友的帮助下解决了。 在我理解中servlet只有post和get方法&#xff0c;然后结果怎么出来这么多奇…...

多种MyBatis写法(数据库操作)

MyBatis&#xff0c;这个从iBatis演变而来的Java持久层框架&#xff0c;凭借其强大的功能和性能&#xff0c;早已成为企业级应用的首选。本文展示几种MyBatis写法&#xff0c;保证数据库操作既高效又灵活。 1. 批量操作 批量操作是提升数据库操作效率的重要手段。MyBatis提供…...

centos 手动安装libcurl4-openssl-dev库

下载源代码 curl downloadshttps://curl.se/download/ 选择需要下载的版本&#xff0c;我下载的是8.11.0 解压 tar -zxvf curl-8.11.0 查看安装命令 查找INSTALL.md&#xff0c;一般在docs文件夹下 –prefix &#xff1a;指定安装路径&#xff08;默认安装在/usr/local&…...

C#中的模拟服务器与客户端建立连接

创建一个控制台项目,命名为Server,模拟服务器端。在同一个解决方案下,添加新项目,命名为Client,模拟客户端。在服务器端与客户端之间建立TCP连接,并在客户端发送消息,在服务器端输出。 Server项目具体要求: 1.在Server项目中,用本机端点建立TcpListener对象,进行监…...

论文阅读——Supervised Learning With Quantum-Inspired Tensor Networks

张量网络是高维张量的有效表示&#xff0c;在物理和数学应用中非常成功。我们展示了如何通过使用矩阵乘积状态&#xff08;张量训练&#xff09;来参数化用于对图像进行分类的模型&#xff0c;将优化此类网络的算法应用于监督学习任务。对于 MNIST 数据集&#xff0c;我们获得的…...

HTML5系列(11)-- Web 无障碍开发指南

前端技术探索系列&#xff1a;HTML5 Web 无障碍开发指南 ♿ 致读者&#xff1a;构建人人可用的网络 &#x1f44b; 前端开发者们&#xff0c; 今天我们将深入探讨 Web 无障碍开发&#xff0c;学习如何创建一个真正包容、人人可用的网站。让我们一起为更多用户提供更好的网络…...

信号和槽思维脑图+相关练习

将登录框中的取消按钮使用信号和槽的机制&#xff0c;关闭界面。 将登录按钮使用信号和槽连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否为"admin"&#xff0c;密码是否为"123456",如果账号密码匹配成功&#xff0c;当前界面关…...

Scala编程基础:模式匹配、解构赋值与正则表达式

在Scala编程语言中&#xff0c;模式匹配、解构赋值和正则表达式是三个非常强大的特性&#xff0c;它们可以让我们以更简洁、更直观的方式处理数据。本文将通过三个示例&#xff0c;详细解释这些特性的使用方法和背后的原理。 1. 模式匹配与case class 模式匹配是Scala中处理数…...

【大数据技术基础】 课程 第1章 大数据技术概述 大数据基础编程、实验和案例教程(第2版)

第1章 大数据技术概述 1.1 大数据时代 这本书的标题是《大数据时代》&#xff0c;副标题为“生活、工作与思维的大变革”。这本书由维克托迈尔-舍恩伯格&#xff08;Viktor Mayer-Schnberger&#xff09;和肯尼斯库克耶&#xff08;Kenneth Cukier&#xff09;合著&#xff0c…...

【基础分析】——宏参数连接

示例1&#xff1a; #include<stdio.h>#define STR1(s) #s#define FUN1(a,b) (int)(a##e##b)int main(int argv, char* agrc[]) {printf(STR1(king...));printf("\n");printf("%d\n", FUN1(2, 3));return 0; } 结果&#xff1a; &#xff08;注&…...

算法3--二分查找

二分查找 原理经典例题[704. 二分查找](https://leetcode.cn/problems/binary-search/)[34. 在排序数组中查找元素的第一个和最后一个位置](https://leetcode.cn/problems/find-first-and-last-position-of-element-in-sorted-array/)[35. 搜索插入位置](https://leetcode.cn/p…...

【信息系统项目管理师】第7章:项目立项管理 考点梳理

文章目录 7.1 项目建议与立项申请7.2 项目可行性研究7.2.1 可行性研究的内容7.2.2 初步可行性研究7.2.3 详细可行性研究&#xff08;重点&#xff09; 7.3 项目评估与决策 【学习建议】本章大概考选择题2分左右&#xff0c;有可能考案例题。论文早年考过。本章知识点比较集中&a…...