am3359制作微型计算机,从BeagleBone谈AM335x硬件系统设计-程序员宅基地

技术标签: am3359制作微型计算机  

从BeagleBone谈AM335x硬件系统设计

[复制链接]

日期:2012-04-25

如果不是要试用BeagleBone,也不会花着大把的时间去研究AM335X的硬件系统设计,这些天翻阅了TI好多的文档资料,有一些小小的心得,和大家共享一下,全当做个记录,时间久了可以回来翻翻。

我主要按以下的顺序,谈谈我最近的一些收获,仅供大家参考。

BeagleBone的参考手册:《BeagleBone Rev A3 System Reference Manual》

1) 关于电源

TI总是宣传AM335x只要5美元,你们在看看它配套使用的电源芯片,价格也不菲啊,都在4美元左右,真他妈的坑爹!而且电源芯片选择的余地也不大,这点对于系统设计来说倒是一件好事,不用过多的纠结,使用成熟的方案就行了。

常见的搭配:可以参考一下《AM335x power options》

a26d678767e8b431ecd7a25f1936bdc5.gif

power.jpg (109.39 KB, 下载次数: 0)

2012-4-25 17:50 上传

也就这几颗料,AM335X_EVM中使用的是TPS65910,在BeagleBone中使用的是TPS65217

有以下几个文档可以参考:

《TPS65217 User’s Guide for AM335x Processors (SLVU551)》

《TPS65910A User's Guide For AM335x Processors (SWCU093)》

《Powering the AM335x With the TPS650250 (SLVA487)》

《Power Management Units for Embedded Processors》

BeagleBone上用的TPS65217也是挺有意思的,看到了吧,有A,B,C三种,有啥区别呢?看看下面的图可能就有启发了。

a26d678767e8b431ecd7a25f1936bdc5.gif

TPS65217.jpg (17.79 KB, 下载次数: 0)

2012-4-25 17:55 上传

很明显我们用的是TPS65217B,为啥呢?AM3359只有ZCZ封装,板载memory是DDR2的。

那么AM3359有几种电源呢?《在AM335x ARM Cortex-A8 Microprocessors (MPUs)》第77页有详细的介绍,主要有1.1V,1.8V,3.3V

a26d678767e8b431ecd7a25f1936bdc5.gif

AM3359_POWER.jpg (132.54 KB, 下载次数: 0)

2012-4-25 18:04 上传

在不同的模式下,系统的主频不一样,对VDD_MPU,VDD_CORE的电压需求也不一样。

a26d678767e8b431ecd7a25f1936bdc5.gif

AM3359_POWER1.jpg (31.86 KB, 下载次数: 0)

2012-4-25 18:10 上传

为什么需要专门的电源芯片,估计是和它各个电源的上电顺序有关。普通的电源芯片能不能满足系统设计要求,目前还没看到成熟的方案,谁也不想自己去当个小白鼠,还是随大流的好。AM335x各个电压的上电顺序如下:

a26d678767e8b431ecd7a25f1936bdc5.gif

power_sequencing.jpg (47.67 KB, 下载次数: 0)

2012-4-25 22:11 上传

由于拿到的试用板子是A3版本的,而且芯片型号也是XAM3359,属于实验样品,没有标明芯片的速率等级,也不知道能跑多快。不过从Linux的系统打印来看,应该是在500MHz或者600MHz

IO的电压也有两种,1.8V或3.3V

从上面的图上可以看到这样的话,Supply voltage range for dual- voltage IO domain

BeagleBone上是直接接在3.3V上的

a26d678767e8b431ecd7a25f1936bdc5.gif

1.8v.jpg (54.21 KB, 下载次数: 0)

2012-4-25 21:56 上传

2)  关于时钟

详细的细节参考datasheet吧,主要的就下面两句话:

The device operation requires a 32k optional crystal and HF crystal with either 19.2,24,25,26 MHz reference clock for operation.

A 32.768-kHz clock input is an optional for the RTC.

BeagleBone采用的是24MHz外部时钟,原理图如下:

a26d678767e8b431ecd7a25f1936bdc5.gif

osc.jpg (28.36 KB, 下载次数: 0)

2012-4-26 15:53 上传

至于内部的主时钟和外部输入的时钟是啥关系,这个还需要进一步的研究,不过和硬件设计本身没有太大的关系。

3)  关于启动模式

The following boot modes are supported:NOR Flash boot

NAND Flash boot

SPI boot

SD/MMC boot

EMAC boot

UART boot

USB boot (like an ethernet card, not as mass storage)

前面4个应该是目前比较流行的启动模式,NorFlash目前随着文件系统和应用的不断扩大,已经渐渐的没落了。现在比较如日中天的应该是从NandFlash启动

BeagleBone目前只是的是从SD卡启动,这个在调试阶段还是挺方便的,做生产的话就有些牵强了,最起码我是不推荐使用的

在这里不得不提美光的一颗memory芯片,型号:MT29CxGxxMAxxxJA

有什么特色呢:137-Ball NAND Flash with LP-DRAM MCP,也就是memory里面既有nand也有LP-DRAM

恰好这个AM335X都支持,这样的memory我很喜欢。可以把系统设计的更加的小巧,而且不用SD卡启动了,适合产品开发。

同时我也见过成功的案例,DM3730 + 这个料

a26d678767e8b431ecd7a25f1936bdc5.gif

memory.jpg (64.97 KB, 下载次数: 0)

2012-4-27 10:41 上传

关于系统的启动流程不在这个里面讨论了,有空单独说说

4)  关于网口

尼玛,不是都标榜有千兆网口吗,我翻遍所有的和AM335X相关的demo板,都是百兆网口,这是为什么??这是为什么???

貌似BeagleBone的接口的接法是MII接口,只有和手册上的RGMII接口类似,但是时钟又是25MHz的,速率只能到100M啊,是不是换成125M的就能到1000M?不过LAN8710也不支持千兆网,哈哈。好奇怪的哦

科普一下:

RGMII(Reduced Gigabit Media Independent Interface)是Reduced GMII(吉比特介质独立接口)。GMII和RGMII均采用8位数据接口,工作时钟125MHz,因此传输速率可达1000Mbps。同时兼容MII所规定的10/100 Mbps工作方式,支持传输速率:10M/100M/1000Mb/s ,其对应clk 信号分别为:2.5MHz/25MHz/125MHz。RGMII数据结构符合IEEE以太网标准,接口定义见IEEE 802.3-2000。

[本帖最后由 chenzhufly 于 2012-4-27 10:42 编辑]

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_34512840/article/details/118403286

智能推荐

c# 调用c++ lib静态库_c#调用lib-程序员宅基地

文章浏览阅读2w次,点赞7次,收藏51次。四个步骤1.创建C++ Win32项目动态库dll 2.在Win32项目动态库中添加 外部依赖项 lib头文件和lib库3.导出C接口4.c#调用c++动态库开始你的表演...①创建一个空白的解决方案,在解决方案中添加 Visual C++ , Win32 项目空白解决方案的创建:添加Visual C++ , Win32 项目这......_c#调用lib

deepin/ubuntu安装苹方字体-程序员宅基地

文章浏览阅读4.6k次。苹方字体是苹果系统上的黑体,挺好看的。注重颜值的网站都会使用,例如知乎:font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, W..._ubuntu pingfang

html表单常见操作汇总_html表单的处理程序有那些-程序员宅基地

文章浏览阅读159次。表单表单概述表单标签表单域按钮控件demo表单标签表单标签基本语法结构<form action="处理数据程序的url地址“ method=”get|post“ name="表单名称”></form><!--action,当提交表单时,向何处发送表单中的数据,地址可以是相对地址也可以是绝对地址--><!--method将表单中的数据传送给服务器处理,get方式直接显示在url地址中,数据可以被缓存,且长度有限制;而post方式数据隐藏传输,_html表单的处理程序有那些

PHP设置谷歌验证器(Google Authenticator)实现操作二步验证_php otp 验证器-程序员宅基地

文章浏览阅读1.2k次。使用说明:开启Google的登陆二步验证(即Google Authenticator服务)后用户登陆时需要输入额外由手机客户端生成的一次性密码。实现Google Authenticator功能需要服务器端和客户端的支持。服务器端负责密钥的生成、验证一次性密码是否正确。客户端记录密钥后生成一次性密码。下载谷歌验证类库文件放到项目合适位置(我这边放在项目Vender下面)https://github.com/PHPGangsta/GoogleAuthenticatorPHP代码示例://引入谷_php otp 验证器

【Python】matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距-程序员宅基地

文章浏览阅读4.3k次,点赞5次,收藏11次。matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距

docker — 容器存储_docker 保存容器-程序员宅基地

文章浏览阅读2.2k次。①Storage driver 处理各镜像层及容器层的处理细节,实现了多层数据的堆叠,为用户 提供了多层数据合并后的统一视图②所有 Storage driver 都使用可堆叠图像层和写时复制(CoW)策略③docker info 命令可查看当系统上的 storage driver主要用于测试目的,不建议用于生成环境。_docker 保存容器

随便推点

网络拓扑结构_网络拓扑csdn-程序员宅基地

文章浏览阅读834次,点赞27次,收藏13次。网络拓扑结构是指计算机网络中各组件(如计算机、服务器、打印机、路由器、交换机等设备)及其连接线路在物理布局或逻辑构型上的排列形式。这种布局不仅描述了设备间的实际物理连接方式,也决定了数据在网络中流动的路径和方式。不同的网络拓扑结构影响着网络的性能、可靠性、可扩展性及管理维护的难易程度。_网络拓扑csdn

JS重写Date函数,兼容IOS系统_date.prototype 将所有 ios-程序员宅基地

文章浏览阅读1.8k次,点赞5次,收藏8次。IOS系统Date的坑要创建一个指定时间的new Date对象时,通常的做法是:new Date("2020-09-21 11:11:00")这行代码在 PC 端和安卓端都是正常的,而在 iOS 端则会提示 Invalid Date 无效日期。在IOS年月日中间的横岗许换成斜杠,也就是new Date("2020/09/21 11:11:00")通常为了兼容IOS的这个坑,需要做一些额外的特殊处理,笔者在开发的时候经常会忘了兼容IOS系统。所以就想试着重写Date函数,一劳永逸,避免每次ne_date.prototype 将所有 ios

如何将EXCEL表导入plsql数据库中-程序员宅基地

文章浏览阅读5.3k次。方法一:用PLSQL Developer工具。 1 在PLSQL Developer的sql window里输入select * from test for update; 2 按F8执行 3 打开锁, 再按一下加号. 鼠标点到第一列的列头,使全列成选中状态,然后粘贴,最后commit提交即可。(前提..._excel导入pl/sql

Git常用命令速查手册-程序员宅基地

文章浏览阅读83次。Git常用命令速查手册1、初始化仓库git init2、将文件添加到仓库git add 文件名 # 将工作区的某个文件添加到暂存区 git add -u # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,不处理untracked的文件git add -A # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,包括untracked的文件...

分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120-程序员宅基地

文章浏览阅读202次。分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120

【C++缺省函数】 空类默认产生的6个类成员函数_空类默认产生哪些类成员函数-程序员宅基地

文章浏览阅读1.8k次。版权声明:转载请注明出处 http://blog.csdn.net/irean_lau。目录(?)[+]1、缺省构造函数。2、缺省拷贝构造函数。3、 缺省析构函数。4、缺省赋值运算符。5、缺省取址运算符。6、 缺省取址运算符 const。[cpp] view plain copy_空类默认产生哪些类成员函数

推荐文章

热门文章

相关标签