2010年4月11日星期日

DM365的GPIO作中断源

It's seem that only bank0 and bank6 could be set as interrupt according with tms320dm365.pdf, But in sprufh8b.pdf, it's said that 'All GPIO signals can be used as interrupt sources with configurable edge detection.' How I could use the other gpios as interrupt souce?

See Table 54 of the ARM subsystem guide to see which GPIOs can be connected to ARM interrupts (sprufg5.pdf).
Basically, if you are using ethernet and uart there's only 1 GPIO left to be configured for an interrupt (GPIO0). This is a bummer.

One more thing to note is that, in case you are using LSP 2.10.xx.xx for DM365, you would not be able to use any GPIO as interrupt because GPIO driver does not support interrupt mode in LSP 2.10.xx.xx

As mentioned, there is only one GPIO left out to be used as interrupt if you are using ethernet. And if you want to use it as interrupt, you would have to write a small kernel module to program the interrupt controller registers.

LSP 2.10.xx.xx does not support GPIO interrupts at all, not even for GPIO0. You will need to write your own driver to support GPIO interrupts...

In the "Known Issues" section of "LSP 2.10 release version 02.10.00.14 - July 9, 2009" the following bullet is listed:
"SDOCM00051972: GPIO pin configured in the interrupt mode does not work"



DM365同时实现H.264和JPEG双码流输出

DM365的HDVCP和IMCOP是两个独立单元,H.264编码和JPEG编码运行在两个不同的硬件引擎,但是目前TI的编码库(H.264和JPEG)共享一些资源,比如EDMA通道和内存等。因为这个原因,要在DM365上实现H.264和JPEG双码流输出,就得让二者按序运行。TI目前提供了一些机制来并行输出双码流,相应的设置流程为:
1. Use scratchGroup Id = 1 for H.264 encoder, scratchGroupId = 2 for JPEG in your .cfg file
2. Release some EDMA channels from the kernel. You have to free atleast 4-6 channels and it can be done in edma.c in the linux kernel source code. The choice of channels to remove depends on your use case and the peripherals you use.
3. Turn on enableDDR parameter of H.264 encoder.
If you have IPNC Reference Design software, you can refer to it for item #1 and #3. But in IPNC also, we do not run JPEG and H.264 in parallel.
Please note that MPEG4 and H.264 cannot run in parallel due to EDMA channel limitation, so keep them both in some scratchGroupId.

2010年4月5日星期一

Mono 计划―Linux版.NET平台


著名的Linux桌面环境"GNOME"的开发商美国Ximian公司在2001年7月开始启动一个名叫Mono Project的开放源码版".NET"的开发项目,旨在使开发者能够编写同时在Windows和Linux上运行的.NET程序,Mono计划主要包括一个C#编译器、与微软公司的Common Language Infrastructure(CLI)兼容的类库、Linux版Common Language Runtime(CLR)编译器。
尽管微软.NET开放的结构许诺跨平台的使用能力(由于使用了中间语言,理论上.NET可以跨平台使用),但是微软公司却并没有计划为其它非微软操作系统平台提供可以使用.NET的相应的工具。针对这种状况,开放源代码协会通过Ximian开始了这个叫做Mono的项目。
据称这个项目大约有60名正规投资人,计划在今年年中左右使用户能够利用这些工具库,这要归功于它的倡导人Miguel de Icaza,Ximian公司的创办人和首席技术官。他推动了GNU网络对象模型环境(GNOME)-Linux两个主要的图形用户接口之一-的创建。Miguel de Icaza说:"虽然微软公司已向欧洲电子计算机工业协会(ECMA:European Computer Manufacturers' Association)以及World Wide Web Consortium(W3C)的标准化机关提交了c#及CLI的标准(现已获得通过),但因为该公司的共享(Shared Source)授权仅限于部分对象,所以不能开发面向Linux或UNIX等平台的应用程序。而我们将提供的是能够自由进行应用程序开发或提供Web服务的工具,令Linux用户也能够享受到.NET平台的巨大好处。"
一位软件开发者说,这个名为Mono的计划目的在于武装那些有意击败微软的开放资源开发者。如果Mono计划成功,微软面临的后果将十分严峻:可以预见,.NET的开放版将使得那些为微软视窗操作系统专门编写的程序能够在Linux或其它操作系统上运行得天衣无缝。
De Icaza说:"5年内,如果有程序运行在.NET上,这些程序也将可以运行在Linux上。" 为Mono编写的程序也可运行在视窗操作系统上。显然,这类跨平台开放性将给微软在操作系统和应用程序两方面的业务重重一击。
在此之前,de Icaza主要开发的是Linux桌面环境GNOME,但是,de Icaza称,他不仅仅将其视为一个用户界面。他说:"我们将其视为一个平台,花了大量时间把它作为基础平台进行开发。这样,开放资源程序员们就能为GNOME编写专门的程序。"
但是,当他在数月前分析微软的.NET框架时,de Icaza称:"他意识到这是一个非常棒的开发平台。我们看到,这与我们正在开发中的GNOME有异曲同工之妙。"
开放源码阵营的正反意见
观点1:对开放源码运动有害,开放源码阵营对这项消息各有正反面解读 。Mono计划一旦实施后,使用者就可以用C#(或者Mono中任何与CLS兼容的开发语言)撰写应用程序、在Linux(或者任何其它有GNOME类别库的操作系统)上进行测试、然后用于Linux或者微软平台上。而这正是开放源码支持者所担心的。由于微软投资了数十亿美元来提升.NET操作系统下的.NET架构,许多开放源码人士认为Mono宛如另一个快捷方式,方便GPL开发人员将其程序转用在微软平台上,Java与Linux反而被排挤到一边。他们同时还担心微软会建立强制连结至HailStorm(现在叫做Microsoft.NET My Services)服务(例如Passport),强迫那些开发Mono的公司必须将应用程序移至窗口环境下才能正常运作。大多数持有这种看法的人士皆认为只要有利于微软者必然对开放源码有害。
观点2:对开放源码运动有益,但另外有许多开放源码的拥护者则认为这是个绝大的开展机会。首先,他们认为若.NET架构能以GPL为基础,并遵循ECMA标准的话,微软在考虑扩展标准,或实施像HailStorm(现在叫做Microsoft.NET My Services)这样的服务时便能采取一种与操作系统无关的公正姿态。他们同时也认为这正可搭上C#及.NET类别库培训和支持的庞大市场潮流。如果Mono计划严格地遵循ECMA标准,那么培训课程、书籍以及各类支持在Windows上执行C#和.NET类别库的相关补充教材都将有助于开放源码人员在Mono上开发各种系统。
而支持Mono的人士则认为Linux以及其它技术(如GNOME)正可趁机进军目前使用微软的企业市场。理论上,原本使用Windows作为开发平台的企业可选择Linux上作业,避开微软服务器授权费。这些人认为,越多程序设计师支持Mono计划,.NET运用在Linux上将比微软开发于Windows来得强。果真如此,微软届时便不得不承认开放源码的力量的确有助于系统技术的开发与最佳化。
如果此项行动获得成功,这将使微软.NET软件愈发重要、更加普及,但是同时也将削弱微软对于软件业的控制。不过,分析家指出,.NET是项初生技术,任何对它的克隆也极可能是更不成熟。
微软的主要竞争对手,顶级Linux软件商Red Hat拒绝对此项计划做出任何评论。但是其首席执行官Michael Tiemann曾表示愿意支持阻挠微软一统计算世界的一切企图。


《当你老了》---叶芝

当你老了,白发苍苍,睡意沉沉,?
倦坐在炉边,取下这本书来,
慢慢读着,追梦当年的眼神
那柔美的神采与深幽的晕影。
多少人爱过你青春的片影,
爱过你的美貌,出于虚伪或真情,
唯独一人爱你那朝圣者的灵魂,
爱你哀戚的脸上岁月的留痕。
在炉栅边,你弯下了腰,
低语着,带着浅浅的伤感,
爱情是怎样逝去,又怎样步上群山,
将面庞藏在了繁星之间。


《相信未来》食指

当蜘蛛网无情地查封了我的炉台?
当灰烬的余烟叹息着贫困的悲哀
我依然固执地铺平失望的灰烬
用美丽的雪花写下:相信未来

当我的紫葡萄化为深秋的露水
当我的鲜花依偎在别人的情怀
我依然固执地用凝霜的枯藤
在凄凉的大地上写下:相信未来

我要用手指那涌向天边的排浪
我要用手掌那托住太阳的大海
摇曳着曙光那枝温暖漂亮的笔杆
用孩子的笔体写下:相信未来

我之所以坚定地相信未来
是我相信未来人们的眼睛
她有拨开历史风尘的睫毛
她有看透岁月篇章的瞳孔

不管人们对于我们腐烂的皮肉
那些迷途的惆怅、失败的苦痛
是寄予感动的热泪、深切的同情
还是给以轻蔑的微笑、辛辣的嘲讽

我坚信人们对于我们的脊骨
那无数次的探索、迷途、失败和成功
一定会给予热情、客观、公正的评定
是的,我焦急地等待着他们的评定

朋友,坚定地相信未来吧
相信不屈不挠的努力
相信战胜死亡的年轻
相信未来、热爱生命

《错误》郑愁予

我打江南走过
那等在季节里的容颜如莲花的开落

东风不来,三月的柳絮不飞
你底心如小小的寂寞的城
恰若青石的街道向晚
跫音不响,三月的春帷不揭
你底心是小小的窗扉紧掩

我达达的马蹄是美丽的错误
我不是归人,是个过客……


《活在这珍贵的人间》 海子

活在这珍贵的人间
太阳强烈
水波温柔
一层层白云覆盖着

踩在青草上
感到自己是彻底干净的黑土块
活在这珍贵的人间
泥土高溅
扑打面颊
活在这珍贵的人间
人类和植物一样幸福
爱情和雨水一样幸福