CN1407480A - 可下载外围装置韧体程序代码的外围装置及方法 - Google Patents
可下载外围装置韧体程序代码的外围装置及方法 Download PDFInfo
- Publication number
- CN1407480A CN1407480A CN 01131305 CN01131305A CN1407480A CN 1407480 A CN1407480 A CN 1407480A CN 01131305 CN01131305 CN 01131305 CN 01131305 A CN01131305 A CN 01131305A CN 1407480 A CN1407480 A CN 1407480A
- Authority
- CN
- China
- Prior art keywords
- program codes
- facility program
- peripheral
- peripheral facility
- downloading
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明是有关于一种可下载外围装置韧体程序代码的外围装置及方法。其中,可下载外围装置韧体程序代码的方法,是将存放在主机中的外围装置韧体程序代码下载至外围装置的方法,其中在外围装置中包括处理器、只读存储器及存取内存,此可下载外围装置韧体程序代码的方法包括:处理器执行存储于只读存储器中的激活加载程序代码,其中激活加载程序代码是用来自主机下载外围装置韧体程序代码至存取内存中。然后,处理器执行下载于存取内存中的外围装置韧体程序代码。
Description
技术领域
本发明是有关于一种可下载外围装置韧体程序代码的外围装置及方法,且特别是有关于一种自主机下载外围装置韧体程序代码至外围装置中的存取内存的外围装置及方法。
背景技术
在传统的计算机外设装置中,若内建处理器及韧体(Firm Ware),可让整个系统的灵活性变大,不会因为硬件本身在设计阶段不周全,或搭配的环境太复杂所衍生的问题而必须重新设计。因此,韧体在某些特定用途或特殊接口的装置中有其存在的必要性。
随着内建处理器与韧体所衍生的问题在于:韧体版本的更新及降低成本的压力。而为了应韧体升级的需求,有所谓的闪存(Flash memory)或EEPROM这类可线上程序化(on line program)的元件作为选择,这类可线上程序化的元件,只需配合相关的硬件设计及一段自我更新的程序代码即可完成,但仍有其成本上的压力,因为在现在个人计算机的配备价格日益趋降的环境中,若要在一般认知价格相当便宜的周边装置中,配置闪存或EEPROM这类可线上程序化的元件,则会使得外围装置的价格相对提高。
为了达到降低成本的目的,部分消费性电子产品的设计方式是取消处理器及韧体的设计,付出的代价是系统的功能无法升级,所有功能在硬件设计完成时便已被限制住,使得整个系统的灵活性变小。
发明内容
有鉴于此,本发明即提出一种可下载外围装置韧体程序代码的方法,使其降低内建韧体本身所需的成本,并使外围装置本身的功能及可扩充性提高。其中,外围装置与主机相连接,且在主机中包括的外围装置韧体程序代码是可使外围装置运作的程序代码。
此可下载外围装置韧体程序代码的方法包括:先让处理器执行存储于只读存储器(Read Only Memory;简称ROM)中的激活加载程序代码,其中激活加载程序代码(bootstrap)用以自主机下载外围装置韧体程序代码至存取内存中。然后,处理器会执行下载于存取内存中的外围装置韧体程序代码。
其中,在上述方法中所使用的处理器、只读存储器及存取内存皆为原先已存在于外围装置的装置。
本发明又提出一种可下载外围装置韧体程序代码的方法,是有关于将存放在主机中的外围装置韧体程序代码下载至外围装置的方法,其中在外围装置中包括存取内存。
此可下载外围装置韧体程序代码的方法包括:执行激活加载程序代码步骤,自主机下载外围装置韧体程序代码至存取内存中。然后进行执行外围装置韧体程序代码步骤,用来执行下载于存取内存中的外围装置韧体程序代码。
其中,执行激活加载程序代码步骤由存在于外围装置中的激活加载装置执行。而执行外围装置韧体程序代码步骤,则是由存在于外围装置中的处理器执行。
本发明又提出一种可下载外围装置韧体程序代码的外围装置,此可下载外围装置韧体程序代码的外围装置包括:存取内存及激活加载装置。
其中,存取内存,用以储存已下载的外围装置韧体程序代码。激活加载装置,用以建立与主机连接的传输接口、下载外围装置韧体程序代码及将外围装置韧体程序代码的储存地址移至存取内存中。其中,可用处理器及只读存储器来取代激活加载装置。
由上述的可下载外围装置韧体程序代码的外围装置及方法中可知,将原本存在于只读存储器的程序代码分割成可初始化外围装置的激活加载程序代码及使外围装置运作外围装置韧体程序代码,而由于初始化的动作必须在一开始就需要执行,因此必须将其固定存储于只读存储器中。而外围装置韧体程序代码则因为具有完整使外围装置运作的执行功能,所以其程序代码所占的空间就会很大,且外围装置也很少会一次完成所有的执行功能,所以可将其储存在主机中,当外围装置需要执行某项功能时再从主机中下载即可。
由于在外围装置中的只读存储器,不需要闪存(Flash memory)或EEPROM这类可线上程序化(on line program)的元件,所以可降低内建韧体本身所需的成本,且将占很大空间的外围装置韧体程序代码储存于主机中,当需要时再下载,使得外围装置本身的功能及可扩充性提高。
附图说明
图1是本发明外围装置与主机的一电路方框图;
图2是本发明下载外围装置韧体程序代码的一流程图;
图3是依据图2其中的一实施步骤的流程图。
附图标记说明:
100:外围装置
102、202:处理器
104:译码器
106:只读存储器
108:存取内存
110:多任务器
112,206:输出/入装置
200:主机
204:内存
具体实施方式
请合并参照图1、图2及图3,是依照本发明实施例的一种可下载外围装置韧体程序代码的方法,是将存放在主机200中的外围装置韧体程序代码下载至外围装置100的方法,其中在外围装置100中包括处理器102、只读存储器106及存取内存108。
由于在主机200及外围装置100的电源激活后,必须先取得主机200及外围装置100之间的联系,所以在此可下载外围装置韧体程序代码的方法包括:步骤s300,处理器102先将激活加载程序代码(bootstrap)的程序地址传送至只读存储器(ROM)106,然后在步骤s310中,取得只读存储器106中的激活加载程序代码,在步骤s320中,处理器102会执行激活加载程序代码,以进行初始化的动作,此初始化动作包括:建立与主机100联系的传输接口(步骤s322),下载外围装置韧体程序代码(步骤s324)及步骤s326,将外围装置韧体程序代码的储存地址自只读存储器106移至存取内存108中。
其中,此激活加载程序代码是存储于外围装置100的只读存储器106中,而外围装置韧体程序代码一开始是存放在主机200中的,当处理器102进行执行外围装置韧体程序代码步骤,由于外围装置韧体程序代码已移转至存取内存108中,是以处理器102会自存取内存108取得外围装置韧体程序代码,以使外围装置100进行其它功能的运作。
其中,在主机200中所包括的外围装置韧体程序代码具有多项执行功能,而下载的外围装置韧体程序代码,可为只具有一项执行功能的外围装置韧体程序代码,或是至少一项的执行功能。因为在主机200中的外围装置韧体程序代码具有多项执行功能,但是外围装置100一次可能只需进行一、两项的执行功能,所以可将外围装置韧体程序代码储存在主机200中,当外围装置100需要执行某项功能时,再自主机中下载即可,如此,使得下载的外围装置韧体程序代码只需占有外围装置100中的存取内存108的一部份空间,让整个系统的资源运用更具有灵活性,且也因为只读存储器106只需存放需进行初使化(initial)的激活加载程序代码,使得只读存储器106不需是闪存(Flash memory)或EEPROM这类可线上程序化(on line program)及成本高的元件,使得本发明在成本上可以降低。
上述的只读存储器,可为一种屏蔽式只读存储器(Mask ROM),为一种较早研发出的一种写入一次式的只读存储器,所以价格会比现在研发出的Flash memory或EEPROM便宜。且上述在外围装置中所使用的处理器、只读存储器及存取内存,皆是在原本外围装置中会使用到装置,所以在本实施例中,并不需要新增的硬件设施来达到本发明的实施目的,进而节省制作上的成本。
另外,在执行初始化阶段(步骤s320)的装置,并不一定需要由处理器102及存储在只读存储器106的激活加载程序代码完成,也可以利用纯硬件的激活加载装置在一开机时来执行,使得处理器102只需执行下载后的外围装置韧体程序代码即可。
请再次参照图1,是依照本发明另一实施例的一种可下载外围装置韧体程序代码的外围装置,其中外围装置100连接主机200,在主机200中包括可使外围装置100运作的外围装置韧体程序代码。
此可下载外围装置韧体程序代码的外围装置,包括:存取内存108及激活加载装置(未绘出),本实施例是利用纯硬件的激活加载装置来作为初始化外围装置的手段,但由上述实施例可知,也可利用只读存储器106及其中存储的激活加载程序代码来完成初始化外围装置的一种手段。
这两种方法各有其优点,若利用硬件达成初始化动作,则在外围装置100中的处理器102,仅需执行已储存在存取内存108的外围装置韧体程序代码即可。而若利用处理器102来读取及执行只读存储器106中存储的激活加载程序代码,则不需新增新硬件即可完成初始化动作。
由上述可知,利用硬件的激活加载装置(未绘出)完成初始化动作,可分担部分处理器102的工作,而由内建的只读存储器106中存储的激活加载程序代码来执行初始化的动作,就必须借助处理器102来完成初始化的动作,而不管是由何种手段达成初始化动作,皆需由处理器102来执行下载于存取内存108的外围装置韧体程序代码。
其中,初始化动作包括:
1.建立与主机200联系的传输接口:也就是使外围装置100与主机200之间可以沟通且可以利用输出/入装置112及输出/入装置206作数据传输或是信息的传递。
2.下载外围装置韧体程序代码:也就是当主机200及外围装置100在电源开启的状态时,主机200的内存204中会先储存外围装置韧体程序代码,外围装置100会将下载外围装置韧体程序代码的指令传送至主机200,而主机200中的处理器202就会自内存204中取得外围装置韧体程序代码,并经由输出/入装置206传输至外围装置100。
3.将外围装置韧体程序代码的储存地址移至存取内存中:当外围装置100接收到自主机200所传送的外围装置韧体程序代码,此时bootstrap就会使储存地址转移至存取内存108,使得处理器102会将外围装置韧体程序代码传送至存取内存108储存。
另外,在内建有只读存储器的可下载外围装置韧体程序代码的外围装置中还包括:译码器104及多任务器110。
其中,译码器104,是连接于处理器102、只读存储器106及存取内存108,用来将处理器102要取得的激活加载程序代码的程序地址译码后传送至只读存储器106,及将处理器102欲储存的外围装置韧体程序代码的储存地址译码后传送至存取内存108。
由于,一开始需进行外围装置初始化的动作,所以处理器102需先取得激活加载程序代码以进行外围装置初始化,所以处理器102会送出激活加载程序代码的程序地址,而经译码器104译码后,即可自只读存储器106中取得激活加载程序代码以进行初始化动作,在进行初始化动作当中,就会将处理器102可存取的程序代码地址转移至存取内存108,然后自主机200下载的外围装置韧体程序代码的储存地址就会转移至存取内存108。
而多任务器110,也是连接处理器102、只读存储器106及存取内存108,用来将存放在只读存储器106的激活加载程序代码及储存于存取内存108的外围装置韧体程序代码输出至处理器102,让处理器102得以执行激活加载程序代码及外围装置韧体程序代码。
若扫描仪为与主机相连接的外围装置,则外围装置韧体程序代码可包括执行灯管运作、马达运转、扫描仪设定(如将分辨率自300dpi调成600dpi)等执行功能。
综上所述,本发明的优点在于:
1.与不含处理器及韧体的装置相比,采用本发明的装置及方法可以得到较大的设计灵活性、功能的升级及版本的更新,所衍生的效益远大于不含处理器及韧体的装置,而所付出的仅是一部份的硬件成本。
2.对已含处理器但不可线上程序化(on line program)的韧体而言,使用本发明可以降低成本及扩充功能,因为当外围装置韧体程序代码所包含的功能越强大,代表外围装置韧体程序代码占的储存空间会越大,所以不可线上程序化的只读存储器就必须扩大其储存空间,而由市场价格可知,储存空间越大的硬件,其价格就会越贵,且因为是不可线上程序化的只读存储器,所以造成存在于其中的外围装置韧体程序代码固定不可变动,使得功能无法扩充。
3.对已含处理器及可线上程序化(on line program)的韧体而言,可达到降低成本的目的,因为类似闪存(Flash memory)或EEPROM这类可线上程序化(on line program)的元件,在市场上的价格绝对会比不可线上程序化的硬件贵,且在储存空间越大相对价格越贵的情况下,本发明只需利用Mask ROM作为外围装置中的只读存储器即可达到与可线上程序化(on line program)的韧体相同的效果,因为本发明是将外围装置韧体程序代码储存在主机中,以降低内建韧体本身所需的成本,也可达到扩充功能的目的。
4.不需一次下载全部的外围装置韧体程序代码,因为若一次下载全部的外围装置韧体程序代码,对外围装置而言,会占据太大的储存空间,且需花费较多的下载时间,所以可以将外围装置韧体程序代码进行分割,当需要其中的某项功能时再下载即可使外围装置本身的功能及可扩充性提高。
虽然本发明已以实施例说明如上,然其并非用以限定本发明,任何熟悉此技术的人,在不脱离本发明的精神和范围内,当可作各种的更动与润饰,因此本发明的保护范围以权利要求书为准。
Claims (20)
1.一种可下载外围装置韧体程序代码的方法,其中在该外围装置中包括一处理器、一只读存储器及一存取内存,其特征为:该可下载外围装置韧体程序代码的方法包括:
该处理器执行存储于该只读存储器中的一激活加载程序代码,其中该激活加载程序代码用来自该主机下载该外围装置韧体程序代码至该存取内存中;以及
该处理器执行下载于该存取内存中的该外围装置韧体程序代码。
2.如权利要求1所述的可下载外围装置韧体程序代码的方法,其特征为:在该主机中包括的该外围装置韧体程序代码具有可使该外围装置运作的复数个执行功能。
3.如权利要求2所述的可下载外围装置韧体程序代码的方法,其特征为:下载于该存取内存的该外围装置韧体程序代码,可为只具有一个该执行功能。
4.如权利要求2所述的可下载外围装置韧体程序代码的方法,其特征为:下载于该存取内存的该外围装置韧体程序代码,可至少具有一个该执行功能。
5.如权利要求2所述的可下载外围装置韧体程序代码的方法,其特征为:该只读存储器为一屏蔽式只读存储器。
6.如权利要求1所述的可下载外围装置韧体程序代码的方法,其特征为:该激活加载程序代码的执行步骤还包括:建立与该主机联系的一传输接口。
7.如权利要求1所述的可下载外围装置韧体程序代码的方法,其特征为:该激活加载程序代码的执行步骤还包括:将该外围装置韧体程序代码的一储存地址自该只读存储器移转至该存取内存中。
8.一种可下载外围装置韧体程序代码的方法,其中在该外围装置中包括一存取内存,其特征为:该可下载外围装置韧体程序代码的方法包括:
执行一激活加载程序代码步骤,用来自该主机下载该外围装置韧体程序代码至该存取内存中;以及
执行该外围装置韧体程序代码步骤,用来执行下载于该存取内存中的该外围装置韧体程序代码。
9.如权利要求8所述的可下载外围装置韧体程序代码的方法,其特征为:在该主机中所包括的该外围装置韧体程序代码具有可使该外围装置运作的复数个执行功能。
10.如权利要求9所述的可下载外围装置韧体程序代码的方法,其特征为:下载于该存取内存的该外围装置韧体程序代码,可为只具有一个该执行功能。
11.如权利要求9所述的可下载外围装置韧体程序代码的方法,其特征为:下载于该存取内存的该外围装置韧体程序代码,可至少具有一个该执行功能。
12.如权利要求8所述的可下载外围装置韧体程序代码的方法,其特征为:该执行该激活加载程序代码步骤,是由存在于该外围装置中一激活加载装置执行。
13.如权利要求8所述的可下载外围装置韧体程序代码的方法,其特征为:执行该外围装置韧体程序代码步骤,是由存在于该外围装置中一处理器执行。
14.如权利要求8所述的可下载外围装置韧体程序代码的方法,其特征为:执行该激活加载程序代码步骤还包括:
建立与该主机联系的一传输接口;以及
转移该外围装置韧体程序代码的一储存地址于该存取内存中。
15.一种可下载外围装置韧体程序代码的外围装置,该外围装置与一主机相连接,在该主机中包括可使该外围装置运作的该外围装置韧体程序代码,其特征为:该可下载外围装置韧体程序代码的外围装置包括:
一存取内存,用以储存已下载的该外围装置韧体程序代码;以及
一激活加载装置,用来建立与该主机连接的一传输接口、下载该外围装置韧体程序代码及将该外围装置韧体程序代码的一储存地址移至该存取内存中。
16.如权利要求15所述的可下载外围装置韧体程序代码的外围装置,其特征为:还包括:一处理器,用来执行已储存在该存取内存的该外围装置韧体程序代码。
17.如权利要求15所述的可下载外围装置韧体程序代码的外围装置,其特征为:可用一处理器及一只读存储器取代该激活加载装置。
18.如权利要求17所述的可下载外围装置韧体程序代码的外围装置,其特征为:该只读存储器,是存放该激活加载程序代码,其中该激活加载程序代码的功能包括建立与该主机连接的该传输接口、下载该外围装置韧体程序代码及将该外围装置韧体程序代码的该储存地址移至该存取内存中。
19.如权利要求17所述的可下载外围装置韧体程序代码的外围装置,其特征为:该处理器,用来执行存放在该只读存储器中的该激活加载程序代码,及执行已储存在该存取内存的该外围装置韧体程序代码。
20.如权利要求17所述的可下载外围装置韧体程序代码的外围装置,其特征为:还包括:
一译码器,连接于该处理器、该只读存储器及该存取内存,用来将该处理器要取得的该激活加载程序代码的一程序地址译码后传送至该只读存储器,及将该处理器欲存取该外围装置韧体程序代码的一存取地址译码后传送至该存取内存;以及
一多任务器,连接该处理器、该只读存储器及该存取内存,用来将存放在该只读存储器的该激活加载程序代码及储存于该存取内存的该外围装置韧体程序代码输出至该处理器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 01131305 CN1407480A (zh) | 2001-08-31 | 2001-08-31 | 可下载外围装置韧体程序代码的外围装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 01131305 CN1407480A (zh) | 2001-08-31 | 2001-08-31 | 可下载外围装置韧体程序代码的外围装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1407480A true CN1407480A (zh) | 2003-04-02 |
Family
ID=4670497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 01131305 Pending CN1407480A (zh) | 2001-08-31 | 2001-08-31 | 可下载外围装置韧体程序代码的外围装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1407480A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100424643C (zh) * | 2005-12-20 | 2008-10-08 | 英业达股份有限公司 | 韧体加载装置 |
CN101340426B (zh) * | 2007-07-04 | 2011-04-27 | 英属盖曼群岛商福华先进微电子股份有限公司 | 一种整合数据传输接口的系统和方法 |
CN102740279A (zh) * | 2011-04-15 | 2012-10-17 | 中兴通讯股份有限公司 | 一种无线网络接入终端及其运行方法 |
CN104123145A (zh) * | 2013-04-24 | 2014-10-29 | 祥硕科技股份有限公司 | 电子装置及控制程序的加载方法 |
-
2001
- 2001-08-31 CN CN 01131305 patent/CN1407480A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100424643C (zh) * | 2005-12-20 | 2008-10-08 | 英业达股份有限公司 | 韧体加载装置 |
CN101340426B (zh) * | 2007-07-04 | 2011-04-27 | 英属盖曼群岛商福华先进微电子股份有限公司 | 一种整合数据传输接口的系统和方法 |
CN102740279A (zh) * | 2011-04-15 | 2012-10-17 | 中兴通讯股份有限公司 | 一种无线网络接入终端及其运行方法 |
WO2012139336A1 (zh) * | 2011-04-15 | 2012-10-18 | 中兴通讯股份有限公司 | 一种无线网络接入终端及其运行方法 |
CN102740279B (zh) * | 2011-04-15 | 2014-12-17 | 中兴通讯股份有限公司 | 一种无线网络接入终端及其运行方法 |
US9208838B2 (en) | 2011-04-15 | 2015-12-08 | Zte Corporation | Terminal for accessing wireless network and running method thereof |
CN104123145A (zh) * | 2013-04-24 | 2014-10-29 | 祥硕科技股份有限公司 | 电子装置及控制程序的加载方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1258702C (zh) | 为不同的指令集结构所编写的固件之间进行通信的方法 | |
JP3330378B2 (ja) | リアルタイムプログラム言語アクセラレータ | |
US6704816B1 (en) | Method and apparatus for executing standard functions in a computer system using a field programmable gate array | |
CN1088216C (zh) | 加载在mca适配卡上的pci扩展卡的配置和ram/rom控制 | |
CN101414264B (zh) | 一种软件版本的更新方法 | |
CN1313941C (zh) | 数据处理装置与操作系统进行数据交换的方法 | |
CN1866212A (zh) | 在引导和关机期间显示图象 | |
US20040076069A1 (en) | System and method for initializing a memory device from block oriented NAND flash | |
CN1499530A (zh) | 非易失性存储器系统内有效允许失序写处理的方法和装置 | |
CN1977243A (zh) | 模拟实模式内存访问时访问扩展内存的系统和方法 | |
CN1698032A (zh) | 从非线性存储器引导 | |
CN1352769A (zh) | 在分离的存储区域中存储数据组的不同版本的装置和更新存储器中数据组的方法 | |
CN1283817A (zh) | 一种为计算设备的自动配置创建并展开较小Microsoft Windows应用程序的方法和设备 | |
JP2002501276A (ja) | 読取り同時書込み操作のためのフラッシュ・メモリ分割 | |
CN105138382A (zh) | 一种Android系统升级的方法及终端 | |
EP2609498A1 (en) | Electronic devices | |
EP0797800A4 (en) | BIOS PROCESS AND ARRANGEMENT FOR A COMPUTER | |
CN1960434A (zh) | 一种实现电视系统升级的方法和装置以及设备 | |
CN114115990A (zh) | 动静结合二进制翻译的程序迁移方法、系统及存储介质 | |
CN1553338A (zh) | 中央处理单元启动的方法及系统 | |
CN1407480A (zh) | 可下载外围装置韧体程序代码的外围装置及方法 | |
CN1037416A (zh) | 能以直接变换方式和存贮体变换方式动作的情报处理装置和变换的切换方法 | |
CN1928821A (zh) | 一种电子设备的在线升级方法 | |
US20050268157A1 (en) | Method for writing data to a non-volatile memory embedded in an integrated circuit and corresponding circuit | |
CN1115630C (zh) | 微型计算机 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |