Chinaunix首页 | 论坛 | 博客
  • 博客访问: 93244
  • 博文数量: 22
  • 博客积分: 275
  • 博客等级: 二等列兵
  • 技术积分: 261
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-19 20:22
文章分类

全部博文(22)

文章存档

2017年(3)

2016年(11)

2015年(8)

我的朋友

分类: 云计算

2015-12-12 19:49:58

基础数据:3000车次  5000车站
一些极限:单车次,100个车站,1000个座位
实用数据:100 * 1000 = 100,000 ,这样可以清晰地描述每个座位在每个车站区间的状态
每个座位使用 4个二进制位  400,000位 = 50,000 字节 所以用64K的SRAM进行扩展是够用了。

每个单元,只处理一个车次某一天的数据,所以只需要线性堆叠就可以实现扩展。

硬件方案:用STC价格较高的芯片 IAP15W4K16S4  PDIP40 约6块钱  4串口
扩展内存  62512 (64KB) 约 12块
晶振PCB之类的,算12块钱  
成本30块钱    30(单价)*3000(车次)*60(预售天数) =  540 万
采用 3+1 多数表决冗余  也就是2160万元
说明:表决处理单元需要4串口,而计算单元可以使用价格更低的芯片,所以总体成本2000万绝对够了,还能有上百万的回扣呢。


工作原理:主控通过串口向席位分配内核发送数据,席位处理单元通过SRAM状态决定是否可预定,是否定票成功,通过串口返回给主控。
主控在三个处理器的结果中取多数结果返回上层。

主控与上层的连接方式:基于IP的串口服务器

时间可性行分析:
假设卖最后一张票  需要执行50000次的读和比较 约 20,0000个指令周期  
这个特定的硬件可以跑35M ,现在我们假设跑在20MHz  ,  每秒可以执行 2000,0000  个指令
也就是对于特定天的特定车次 ,这个30元的节点可以实现10TPS,3000个节点,可以实现 30000TPS ,比现有的1000TPS 提高30倍的吞吐量。

可以看到这个方案实在是太简单又太可靠了。所以完全可以满足样求。又具有线性扩展能力。
阅读(1621) | 评论(0) | 转发(0) |
0

上一篇:C语言精要

下一篇:Scratch的通讯协议

给主人留下些什么吧!~~