Some findings about the synthesis of asynchronous circuits

As I failed to configure the SCIM input method on my Ubuntu and this is totally technical content, I dont bother to write in English.

Recently I am synthesizing several asynchronous router designs to compare the area, speed and power performance. Some results are not expected as before:

1. Back-annotating the floorplan to Design Compiler affects the synthesis results significantly. Normally it is not supposed to back-annotate the floorplan in synthesis. We hope that the results in place and routing would be compatible or finally converge to our timing constraints. However, at least for asynchronous circuits, it seems the logical synthesized timing without floorplan is too optimistic.

2. Asynchronous circuits need more area margin than synchronous circuits. For synchronous circuits, the normal floorplan margin for the die size is around 70%-80%. Now in my asynchronous circuits, it seems the margin should be around 50%-60%, otherwise, the speed performance would degrade significantly. A published paper in ASYNC’04 shown that an asynchronous router IP used an extreme margin of 35%. All these show that asynchronous circuits are even more area consuming when they are really placed and routed.

3. ICC can reduce the dynamic power by 5%-10% by using a saif file from the post-synthesis simulation. I was expecting a even larger power saving but now the saving by tools seems marginal.

4. With the back-annotated floorplan, DC seems to insert too many buffers which are not really necessary. The router after synthesis is around 130,000 um^2 (floorplan back-annotated). After place and routing, the area is reduced to 90,000 um^2. It is now hard to say. Without the floorplan, the timing is optimistic. With the floorplan, the area estimation is pessimistic.

Advertisements

My new Android cell phone

经过了近两周,终于搞定了新手机,Motorola Milestone (Android 2.1 plus physical QWERT keyboard)。感叹,换部手机不容易啊,有点自找的,下回不贪便宜了。

这是还要从两周前说起。两周前的周六,突然看到了Sony-Ericsson XPERIA-X10-mini-pro的广告。很早就想换部手机了,但是不想要iPhone,太贵,而且本人不太喜欢Apple把什么都搞得单独标准的商业行为。最近的Andorid很合我的口味,可是我还希望有硬件全键盘和大一些的屏幕(原来的N95看pdf实在是太小了)。这个XPERIA-X10-mini-pro看起来不错,可是屏幕太小。于是查了查,发现了Motorola的Milestone。去年11月的产品,价格现在也降得差不多了,3.7”的屏幕加上全硬件键盘,基本满足所有要求了。当天就决定要下单。(此决定被同实验室的RA定义为冲动购买)

从哪买也是个问题,显然我不会准备去签合同,只能是买个Sim free的。搜了搜,Amazon.uk上的价钱是320 GBP,另外一个名叫SimplyElectronics的网站居然只要280 GBP,40 GBP已然不是个小数目了。查了查发现该小网站喜欢拖延送货,退货也超级慢,客服不好,但是还没有欺诈的行为(这且统统都被我自己证实了)。想想我也不着急,拖着呗,就在SimplyElectronics下单了。事后觉得,捡便宜这种事情还是不适合我干。。

总之是划钱超级快送货超慢,直到他们承诺的第7个工作日他们才送货出仓(dispatch),我足足等了12天才拿到,不过这才是个开始。

拿到手机挺高兴,结果说明手册看不懂,全是意大利文(我只看懂了后面的地址是意大利米兰)。网上找了个GB的手册开始用,结果发现手机开机是中文(靠,在英国买手机,开机中文,人性化??)然后开机过程和手册上的不一样,WLAN连接上了上不了网,没有Android Market,不能连接GMail总之是把我搞的一头雾水。

慢慢的,我开始理解到,我拿到的是一个大陆行货,专业说法是milestone XT702 远东中文版。该版本把Google的所有服务都给阉割了,也就是说我用的Google Android系统却不能用Google的各种服务。我尝试过各种方法来在不破坏系统的前提下安装Google服务,甚至在恢复状态下安装升级包,最后能接上Gmail,但是Android Market, AppBrain, Google Calender统统失败,(系统太新导致升级包的版本反而过低)。这个阉割很彻底(注,阉割版本XT702,欧洲版本是A853, US叫A855)。

无奈之下,我走上了刷机之路。最终我把机器刷回了UK的A853版本。刷完之后,一切正常。所有的功能不费吹灰之力就搞定(这才像个智能手机嘛)。

总结:
1. SimplyElectronics按照有些英国人的研究,应该是一个香港公司,近年来在英国和美国开始搞销售,利用香港和欧美的差价赚钱。送货还是有信誉的,但是往往会将承诺的时间用满来获得中转时间。比较适合爱省钱人士(这也解释了为什么我拿到的居然是中文版本)。
2. Motorola Milestone还是很好的,键盘有点硬,屏幕很好。WLAN的问题是手机自动睡眠时没有给AP发出提示报文导致AP认为手机自动脱离网络,升级系统或关闭WLAN的自动睡眠可解决。
3. 欧洲版本A853超级好用,阉割版本XT702简直要了我的命。不得不说,国内用智能手机也要是个电脑高手,想翻个墙也忒不容易了。
4.刷机参看:
http://www.motorolafans.com/forums/motorola-milestone/
http://www.motorolafans.com/forums/motorola-milestone/30130-how-flash-sbf-file-you-milestone.html
http://and-developers.com/sbf
国内论坛也有很多解释,但是乱得一塌糊涂。反正我是看中文懂个大概,然后回来看英文的指导具体操作和获得刷机文件。
注:刷机要用WinXP,Win7和Vista会出错。
5.再次验证,怕麻烦就不要贪便宜,便宜必然有便宜的问题。40 GBP就耗了我14天,无数脑细胞,刷成砖头的风险和理论上失去原厂保修。下回不能再干了,还是老老实实Amazon吧。

Anyway,我也开始Android了。

开始用Ubuntu

最近开始用Ubuntu了。

由于搬了家,较远且偏僻,晚上不去实验室了。但是在家也不能闲着,所以开始在家里搞另外一个关于片上网络的项目。还不能肯定自己的想法是正确的,于是乎在大规模的搞之前,我决定先用SystemC做一做行为级的建模验证一下。由于这一次是同步设计,所有的模型都要推倒重来,已经写了三周多了。最近想要测一下。可是家里的系统是Windows XP的netbook。在Windows上运行SystemC基本上就是噩梦。远程连接到实验室太慢,netbook也根本带不动虚拟机,于是痛下决心要把netbook的操作系统给换了,我也要开始使用Linux娱乐的生活了(基本上我的netbook就是我的娱乐机器)。

几天前下了一个Ubuntu10.10刻成DVD,乐滋滋的带回家。走在半路想起netbook根本没光驱。。。。我也没带优盘。。。。

回家琢磨半天,发现Ubuntu可以在Windows上使用Wubi直接装。这有点像虚拟机,但完全是两码事。Wubi是一个开源软件,主要有两个功能:1. 在原来的Windows系统上安装一个类似Grub的引导程序使得开机可以选择操作系统。2. 建立一个Windows下的文件并将该文件虚拟成Linux的一个文件系统(和虚拟机的虚拟文件系统一样)。虽然文件系统是虚拟的,但安装在虚拟文件系统上的Linux可以脱离Windows直接运行,就好象使用不同分区的双系统一样。并且它有两个很直接的好处:原来的Windows系统根本就没受破坏,虚拟文件系统上的Linux可以直接访问windows管理的文件系统,两个系统根本就是共享磁盘空间的(也不完全是,windows看不到linux的)。

无论如何,用这个东西我是顺利把Ubuntu Netbook edition 10.04装上了。这里的netbook版本是个小错误。我满以为netbook的版本会对性能做优化(也许也是有优化),但是它居限制同时只能在一个工作区上编辑一个软件。比如说我开了xterm就不能同时看见我的emacs。还好最后发现登录时可以选择正常的gnome,不然我肯定再在装一遍正常版本。

基本上没觉得Ubuntu和Fedora有多大的区别。有点不爽的是Ubuntu使用apt-get而不是yum,老是敲错。另外没有service manager,应该也能装一个,还没怎么琢磨。

装上之后的最开始的问题是不能上无线!它的Network Manager居然不能正确识别WEP 64-bit的密钥系统。搞了半天才晓得要装个WICD的东东才可以。现在还有两个问题没解决,不过也不太想搞了:1. SCIM死活也不能用Ctrl+Space激活;2.不能休眠。

总的来说现在的Linux已经很人性化了。想当年用red hat的时候,连挂载一个ntfs的分区都要我重新编译一遍内核,简直是不可理喻。现在安一个网卡也仅仅是点一点驱动管理就自动识别了,和windows也不相上下了。不过对多屏幕的支持还不太好。我把我的扩展LCD放在右边电影就没图像,放在下边就有,也不知道是个什么怪问题。

stay low and enjoy it

人有两种活法:
1. always fighting: 总是争取你想要的东西。
2. fight only those you deserve: 只争自己该得的。

如果让我选择,我选择第二种。

选第一种的人总是能得到些额外的好处。人常说,不争怎么知道能不能得到。然而,争必然消耗精力与时间,还包括愿望。最后没有争到,自然耗费了时间精力更获得了沮丧。其实,争也是有代价的。有点像打官司,你要告,首先要有告的本钱,不然也是白费力气。

不争比较吃亏。一下子放弃了可能的机会,比较愚蠢。但是,人又如何能奢望所有。父亲有句话,“做个学者,首先要坐得冷板凳”。什么是冷板凳,其实就是享受孤独,放弃外面的花花世界。选择你不能放弃的、势在必得的,而主动放弃争取可有可无的或者不一定属于自己的东西。争,只争必须争的,并全力以赴;不争,则不作奢望,先认定已经失去。

有时世界也是公平的,该你的跑不了,不该你的你别想。获得一时之利不足以坚持一世,世事难料,又焉知祸福。如若不争而获,自说明无愧,自是好事一件。当成飞来横福反而更为高兴不是。

人有时候,笨点好。