CN103150283A - 电子装置 - Google Patents

电子装置 Download PDF

Info

Publication number
CN103150283A
CN103150283A CN2012105111247A CN201210511124A CN103150283A CN 103150283 A CN103150283 A CN 103150283A CN 2012105111247 A CN2012105111247 A CN 2012105111247A CN 201210511124 A CN201210511124 A CN 201210511124A CN 103150283 A CN103150283 A CN 103150283A
Authority
CN
China
Prior art keywords
baud rate
value
circuit
electronic installation
serial signal
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.)
Granted
Application number
CN2012105111247A
Other languages
English (en)
Other versions
CN103150283B (zh
Inventor
广松亚由美
片山雅弘
山崎尊永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanken Electric Co Ltd
Original Assignee
Hitachi ULSI Systems Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi ULSI Systems Co Ltd filed Critical Hitachi ULSI Systems Co Ltd
Publication of CN103150283A publication Critical patent/CN103150283A/zh
Application granted granted Critical
Publication of CN103150283B publication Critical patent/CN103150283B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/0262Arrangements for detecting the data rate of an incoming signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
    • H04L7/0331Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop with a digital phase-locked loop [PLL] processing binary samples, e.g. add/subtract logic for correction of receiver clock

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Dc Digital Transmission (AREA)
  • Communication Control (AREA)

Abstract

本发明提供一种电子装置,其具备串行通信电路,实现高精度的波特率调整。例如通过时钟计数器(CKCUNT)测量接收串行数据DBGI的多个位的位宽,计算其平均值,并且检测最大值和最小值(AVGC、MAXD、MIND)。另外,例如通过该平均值的大致1.5倍和大致0.5倍计算最大允许值和最小允许值,且判断最大值和最小值是否在最大允许值和最小允许值的范围内(MXMNJGE)。如果在范围内(是),则将该平均值设定在波特率设定寄存器(REG_BR)中。

Description

电子装置
技术领域
本发明涉及电子装置,特别是涉及有效用于具备能够设定波特率的串行通信电路的电子装置的技术。
背景技术
例如,专利文献1中公开了预先设置表示数据的波特率(例如76kbps)的命令(例如8’h8C),使用基于该命令的波特率在收发时进行数据通信的方法。发送侧在将波特率设定为76kbps时发送串行数据8’h8C,接收侧通过对其进行解码以及解读、识别,将自身的波特率设定为76kbps。
另外,专利文献2中公开了检测串行通信中的同步域的异常波形的波特率错误检测电路。该电路首先对串行数据中的沿进行响应,生成沿检测信号,基于沿检测信号测量起始位的位宽,生成表示测量到的位宽的期待值。然后,依次测量起始位之后的沿间的宽度,在与期待值的误差超过允许范围的情况下看作是异常。
例如,作为具备MCU(Micro Control Unit微控制单元)等半导体集成电路装置(IC芯片)的组装装置(电子装置)的调试方式,已知利用在IC芯片内设置的JTAG(Joint Test Action Group联合测试行动小组)接口等的方式。当使用该方式时,例如可经由具有TCK、TDI、TDO、TMS等多个外部端子的JTAG接口从外部的检查装置访问IC芯片内的处理器等,能够在恰当地确认处理器等内部状态的同时进行程序调试等。但是,在使用JTAG接口时,需要多个外部端子,因此,IC芯片(以及电子装置)的电路面积(成本)可能增大。因此,期望以UART(Universal Asynchronoug Receiver Transmitter通用异步收发器)等为代表的串行通信电路经由半双工方式的一条通信线实现这样的调试功能。
UART是以非同步进行串行通信的方式,因此需要预先在IC芯片(被检查装置)侧和检查装置侧在设定波特率后进行通信。即,检查装置和被检查装置分别具备独立的基准时钟生成电路,在单纯地连接的状态下,通过频率等相互不同的时钟进行动作,不会成为彼此能够识别时钟频率的状态。因此,例如像专利文献1那样,考虑使用表示波特率的公共的命令,在检查装置和被检查装置之间设定相同的波特率的方式。但是,该方式需要接收侧和发送侧的基准时钟均稳定,且事先判定了相互的基准时钟频率。在不判定相互的基准时钟频率的情况下,可能无法正确地进行最初的波特率设定用命令的收发。
为了防止这种事态,考虑在串行数据内预先设置同步域,接受测通过测量从发送侧发送的同步域的脉冲宽度,自动调整波特率的方式。专利文献2中公开了在这种同步域内具有异常波形时对其进行检测的电路。该电路在起始位测定成为基准的波特率,将其作为期待值判别在起始位之后依次测量的沿间隔(脉冲宽度)是否良好,由此检测异常波形。但是,当不仅在数据位,而且在起始位也要调整波特率时,例如在串行数据的上升/下降沿的倾斜不同时,起始位之后的沿间隔与起始位不同,因此,波特率的调整精度可能降低。
另外,在专利文献2中,使用LIN(Local Interconnect Network本地互连网络)等串行通信协议。在LIN协议中,由标头和响应构成1个帧,在该标头内包含上述的同步域(8’h55的数据)。此时,在每次传送帧时,进行基于同步域的波特率调整,例如在上述的IC芯片和检查装置之间的调试用通信的过程中,每次执行上述的波特率调整带来通信效率的降低。
例如,如果在IC芯片内装配有以水晶振荡电路为代表的高精度的基准时钟生成电路,则通过一次进行波特率调整即可在较长时间内维持收发间的频率设定误差小的状态,因此,有时实现通信效率的改善。但是,为降低调试成本等,期望不使用需要水晶振子等外置零件的水晶振荡电路等,而使用IC芯片内置的精度较低的基准时钟生成电路来实现调试功能。但是,该情况下,收发间的频率设定误差逐渐增大,不能进行波特率的再调整可能无法维持正常的通信状态。这样,有时通信效率的提高和波特率调整的高精度化处于折衷的关系,期望实现考虑到该平衡的串行通信方式。
专利文献1:特开平11-272571号公报
专利文献2:特开2011-35473号公报
发明内容
本发明是鉴于这样的情况而做出的,其目的之一在于,在具备串行通信电路的电子装置中,实现高精度的波特率调整。根据本说明书的记载及附图所示,本发明的上述以及其它目的和新的特征将会变得明了。
简单说明用于解决本申请所公开的课题的对策中的具有代表性的对策的概要,如下所述。
本发明一实施方式的电子装置与具有通信功能的其它装置进行串行通信。该电子装置具备包含波特率调整电路与其它装置进行串行通信的串行接口电路和生成内部时钟信号的时钟生成电路,在与其它装置连接的状态下接收来自其它装置的串行信号。串行信号由1位的起始位、接着起始位的多位的数据位、接着数据位的1位的停止位构成。在此,波特率调整电路通过基于内部时钟信号的计数动作测定接收到的串行信号的各位的时间宽度,计算其平均值,并且检测其中的最大值和最小值。另外,波特率调整电路基于该平均值运算最大允许值和最小允许值,并且判别该最大值和最小值是否在该最大允许值和最小允许值的范围内。而且,在范围内的情况下,波特率调整电路设定与上述的平均值相对应的波特率,该电子装置以该设定的波特率执行与其它装置之间的串行通信。
发明效果
根据所述一个实施方式,在具备串行通信电路的电子装置中,可以实现高精度的波特率调整。
附图说明
图1是表示在本发明一实施方式的电子装置中包含的半导体集成电路装置的结构例的框图;
图2是表示包含图1的半导体集成电路装置的串行通信系统(调试系统)的主要部的结构例的框图;
图3是表示图2的片上调试用控制块识别的命令的一例的说明图;
图4是表示在图2的串行通信系统(调试系统)中其串行通信数据的格式的一例的说明图;
图5是表示在图2的半导体集成电路装置中其波特率调整电路的详细的结构例的框图;
图6是表示图5的波特率调整电路的时钟计数器及平均值运算部的动作例的说明图;
图7是表示在图6中计算出的基准值错误时的一例的说明图;
图8(a)、(b)是表示图5的波特率调整电路的详细动作例的图,(a)是无错误时的波形图,(b)是有错误时的波形图;
图9是表示在图5的波特率调整电路中波特率的误差的影响的一例的说明图;
图10是表示在图5的波特率调整电路中产生命令的误识别时的一例的说明图;
图11是表示图5的波特率调整电路中要进行波特率的变更时的动作例的说明图;
图12是表示在图2的片上调试用控制块中其片上调试电路的主要的动作例的状态迁移图;
图13是表示在图2的串行通信系统(调试系统)中从外部检查装置向半导体集成电路装置的闪速存储器写入访问的动作例的说明图;
图14是表示在图2的串行通信系统(调试系统)中从外部检查装置向半导体集成电路装置的JTAG访问的动作例的说明图;
图15是表示图2的片上调试电路具备的复位功能的一例的概念图;
图16是表示图15的各种复位源和其效力范围的一例的说明图;
图17是表示图6的变形例的说明图;
图18是表示使图2的半导体集成电路装置变形的构成例的框图。
符号说明
ADJCMP设定结束信号(使能信号)
ADJERR错误信号
ANLG_BK模拟电路块
AVGC平均值运算部
BITCUNT位计数器
BRCTL波特率调整电路
BRJGE波特率设定可否判定部
BS内部总线
CKCUNT时钟计数器
CLK时钟信号
CLKCTL时钟控制电路块
CPU处理器单元
DAT数据位
DBGI接收串行数据
DBGO发送串行数据
DBGPI接收并行数据
DBGPO发送并行数据
DEV半导体集成电路装置
DGTL_BK数字电路块
EQTST外部检查装置
FCON闪速存储器控制器
FEGCUNT下降沿计数器
FMEM闪速存储器
GND接地电源电压
IBF输入缓存电路
IRC自励振荡电路
JTAGIF JTAG接口电路
MAXD最大值检测部
MDCTL模式控制电路
MIND最小值检测部
MN NMOS晶体管
MXMN JGE允许值判定部
OCD片上调试电路
OCDBK片上调试用控制块
OSC振荡电路
PERI各种周边电路
PLL相位同步电路
PN外部端子
POR接通复位电路
PSC并串行变换电路
R电阻
REG_BR波特率设定寄存器
RSTCTL复位控制电路
SIF串行接口电路
SPC串并行变换电路
STP起始位
STR停止位
VCC电源电压
WDT看门狗计时电路
WRDBG串行配线
具体实施方式
在下面的实施方式中,为便于说明有时需要分割成多个部分或实施方式进行说明,但除特别明示的情况以外,它们彼此不是毫无关系,一方处于另一方的一部分或全部的变形例、详细说明或补充说明等的关系,另外,在以下的实施方式中,在言及要素的数量等(包含个数、数值、量、范围等)的情况下,除去特别明示的情况及原理上明确限定为特定的数量的情况等外,其特定的数量没有限定,可以为特定的数量以上也可以为以下。
另外,在以下的实施方式中,其构成要素(也要素等级等)除没有特别明示的情况及原理上认为必须明确的情况等外,不能说是不是必须的。同样,在以下的实施方式中,在提及构成要素等形状、位置关系等时,除特别明示的情况及原理上认为必须明确的情况等外,实质上包含与其形状等近似或类似等。这对于上述数值及范围也相同。
另外,构成实施方式的各功能块的电路元件没有特别限制,通过公知的CMOS(相辅型MOS晶体管)等集成电路技术形成于单晶硅那样的半导体衬底上。此外,在实施方式中,作为MISFET(Metal Insulator Semiconductor FieldEffect Transistor金属氧化层半导体场效晶体管)的一例,使用MOSFET(MetalOxide Semiconductor Field Effect Transistor金属氧体场效应晶体)(简称为MOS晶体管),但作为栅极绝沿膜并非除非氧化膜之外的膜。
下面,基于附图说明本发明的实施方式。此外,在用于说明实施方式的全图中,对于同一部件原则上标注同一符号,省略其重复的说明。
《半导体集成电路装置的整体构成》
图1是表示本发明一实施方式的电子装置包含的半导体集成电路装置的结构例的框图。图1所示的半导体集成电路装置DEV1没有特别限定,例如为由一个半导体芯片(IC芯片)构成的MCU(Micro Control Unit微控制器)等。DEV1没有特别限定,但是例如作为在印刷配线基板上安装有多个部件的组装装置(电子装置)的一部分部件等使用。图1的DEV1具备:处理器单元CPU、闪速存储器FMEM、闪速存储器控制器FCON、模拟电路块ANLG_BK、数字电路块DGTL_BK、片上调试用控制块OCDBK、时钟控制电路块CLKCTL、复位控制电路RSTCTL、模式控制电路MDCTL。CPU、FCON、ANLG_BK、DGTL_BK、OCDBK、及CLKCTL通过内部总线BS彼此连接。
闪速存储器控制器FCON适宜控制经由内部总线BS进行的向闪速存储器FMEM的访问(读出访问/写入访问)。在FMEM中例如存储有预定的程序、与之相伴的各种数据等。处理器单元CPU例如经由FCON从FMEM读出预定的程序等,执行基于该程序等的预定的运算处理等。模拟电路块ANLG_BK包含各种模拟电路,代表性地包含模拟数字变换电路、数字模拟变换电路、各种传感器电路等。数字电路块DGTL_BK包含各种数字电路,代表性地包含时钟电路、直接存储器访问控制器、各种外部串行通信控制电路等。此外,DGTL_BK中还包含CPU执行程序时使用的工作用RAM(Random AccessMemory)等。
时钟控制电路块CLKCTL具备振荡电路OSC、自励振荡电路IRC、相位同步电路PLL等。OSC例如为水晶振荡电路等,根据与外部端子PN_XTAL连接的水晶振子等(未图示),生成具有预定的振荡频率的基准时钟信号。自励振荡电路IRC代表性地是由多级的逆变电路构成的环形振荡电路等,是通过接通DEV1的电源不需要外部部件地生成基准时钟信号的电路。IRC不限于环形振荡电路,例如还可以是利用内部电阻和内部电容生成基准时钟信号的CR振荡电路等。PLL基于由OSC或IRC生成的基准时钟信号生成其倍增(代表性地是整数倍,根据情况包含小数点的倍率)的内部时钟信号。该内部时钟信号被恰当地提供给OCDBK、CPU、FCON、ANLG_BK、DGTL_BK。
模式控制电路MDCTL根据从外部端子PN_MD输入的模式切换信号切换DEV1整体的动作模式。例如,DEV1具备通常动作模式和调试动作模式。DEV1在通常动作模式下基于由用户决定的FMEM内的程序等使用各种内部电路实现所希望的功能。另一方面,为了开发(调试)在该通常动作模式下使用的FMEM内的程序自身等而使用调试动作模式,DEV1使片上调试用控制块OCDBK有效,另外,将DEV1的各种内部电路设定为可调试的状态。
片上调试用控制块OCDBK具备经由调试用外部端子PN_DBG进行DEV1的调试所需的各种功能。详细后述,OCDBK例如具备从PN_DBG向CPU的内部寄存器的访问功能的一部分及从PN_DBG向FMEM的访问功能的一部分等。复位控制电路RSTCTL根据来自外部端子PN_RST的复位信号进行DEV1内的各种内部电路的复位。另外,RSTCTL具备例如接通复位电路,在检测到DEV1的电源接通后进行DEV1内的各种内部电路的复位。
《串行通信系统(调试系统)的主要部的构成》
图2是表示包含图1的半导体集成电路装置的串行通信系统(调试系统)的主要部的构成例的框图。图2表示图1的半导体集成电路装置DEV1中的与调试相关的部分的结构例和在该调试中使用的外部检查装置EQTST。EQTST的测试用外部端子PN_TST和DEV1的调试用外部端子PN_DBG通过一条串行配线WR_DBG连接,EQTST和DEV1经由WR_DBG进行半双工双向串行通信。WR_DBG在此经由上拉电阻Rup被上拉至电源电压VCC。
EQTST没有特别限定,例如为个人计算机等,具备在外部端子PN_TST和接地电源电压GND之间耦合了源漏极路径的NMOS晶体管(漏极开路输出缓存电路)MNe和以PN_TST为输入的输入缓存电路IBFe。EQTST与时钟信号CLKe同步地进行介由PN_TST的收发动作。例如在发送‘H’电平时将MNe的栅极驱动为截止电平,在发送‘L’电平时将MNe的栅极驱动为接通电平,在进行接收动作时经由IBFe取得PN_TST的逻辑电平。
如图1所示,半导体集成电路装置DEV1具备片上调试用控制块OCDBK、处理器单元CPU、闪速存储器控制器FCON及闪速存储器FMEM、自励振荡电路IRC、复位控制电路RSTCTL。IRC例如经由图1所示的相位同步电路PLL生成内部时钟信号CLKd,RSTCTL生成内部复位信号RSTd_N。CPU具备基于JTAG(Joint Test Action Group)规格实现CPU向各内部寄存器等的访问的JTAG接口电路JTAGIF。
OCDBK具备NMOS晶体管(漏极开路输出缓存电路)MNd,输入缓存电路IBFd、串行接口电路SIF、片上调试电路OCD。与EQTST的情况相同,MNd在外部端子PN_DBG和GND之间耦合源漏极路径,根据发送串行数据DBGO_N驱动栅极。另外,IBFd在进行接收动作时,取得PN_DBG的数据,输出接收串行数据DBGI。串行接口电路SIF具备波特率调整电路BRCTL、串并行变换电路SPC、并串行变换电路PSC。
串并行变换电路SPC在进行接收动作时将上述的接收串行数据DBGI变换成接收并行数据DBGPI。并串行变换电路PSC在进行发送动作时将发送并行数据DBGPO变换成上述的发送串行数据DBGO_N。波特率调整电路BRCTL根据接收串行数据DBGI检测波特率,并且根据该检测结果设定SPC及PSC的动作定时。详细后述,该动作定时在此通过内部时钟信号CLKd的计数进行设定。片上调试电路OCD根据接收并行数据DBGPI的值(命令)进行调试用内部状态的变更。详细后述,在调试用内部状态中包含空闲状态、JTAG访问状态、闪速存储器访问状态。
图3是表示图2的片上调试用控制块识别的命令的一例的说明图。之后按顺序说明图3的各命令的详细内容,在此,对其概要进行说明。在作为接收串行数据DBGI,片上调试用控制块OCDBK以8位的十六进制(8’h)接收到命令“8’h55”,或者当继命令“8’h65”之后接收到命令“8’h55”时,使用波特率调整电路BRCTL进行波特率调整。前者在进行波特率的微调整时使用,后者在较大地变更波特率时使用。
在作为DBGI,OCDBK接收到命令“8’hEA”或命令“8’h6A”时,经由片上调试电路OCD迁移到闪速存储器访问状态。OCD在通过命令“8’h6A”迁移到闪速存储器访问状态时,将之后输入的来自串行接口电路SIF的预定的次数的接收并行数据DBGPI经由闪速存储器控制器FCON写入FMEM。另一方面,在通过命令“8’hEA”迁移到闪速存储器访问状态时,经由FCON进行预定次数的从FMEM的数据读出,且将该各并行数据作为DBGPO发送给SIF。
在作为DBGI,OCDBK以8位的二进制(8’b)接收到命令“8’bxxxxxx00”(x:无关)时,经由OCD迁移到JTAG访问状态。OCD在JTAG访问状态下将来自串行接口电路SIF的DBGPI协议变换成基于JTAG规格的格式,且将该变换后的信号发送给CPU的JTAGIF。在此,向JTAGIF发送8位的数据。另外,OCD与之相伴收集从JTAGIF依次发送的数据(在此为8位),且将其作为DBGPO发送到SIF。在作为DBGI,OCDBK接收到命令“8’hFF”时,生成复位信号。此外,将在以后详细叙述图3所示的命令分配,其特征在于可通过下位2位进行动作的大致的判别。
如上所述,当使用图2的调试系统时,可以从外部检查装置EQTST经由串行配线WR_DBG向半导体集成电路装置DEV1内的CPU的各内部寄存器及闪速存储器FMEM等进行访问。由此,例如可以在确认CPU的各内部寄存器等的状态的同时,实现在FMEM内存储的程序的调试等。此时,由于为通过一个端子(PN_DBG)进行调试的方式,所以例如于通过JTAG接口具有的多个端子进行调试的方式等相比,包含DEV1的小型化、低成本化等,实现调试成本的降低等。
另外,因为使用来自不需要外部的水晶振子等的自励振荡电路IRC的内部时钟信号CLKd,在EQTST和DEV1之间进行调试用通信的方式,所以由此实现调试成本的降低等。但是,对于以环形振荡器等为代表的IRC而言,当考虑制造偏差及温度、电压偏差等时,可能在各半导体芯片间产生例如±10%程度的误差。因此,为了在EQTST和DEV1之间进行可靠的通信,需要在EQTST和DEV1之间,在整个调试期间维持动作定时的误差收敛于某程度的范围内。作为其一,如专利文献2所示,考虑在各帧之间设置同步域的方式,但此时由于在各帧中存在的同步域可能导致通信效率降低。因此,使用本实施方式的方式有益。
《串行通信数据的格式》
图4表示在图2的串行通信系统(调试系统)中其串行通信数据的格式一例。如图4所示,在外部检查装置EQTST和半导体集成电路装置DEV1之间的串行配线WR_DBG中,传输以起始位(1位)STR、停止位(1位)STP、以及其间的数据位(8位)DAT合计10位为单位(一个域)的串行通信数据。起始位STR为‘L’电平,停止位STP为‘H’电平,均具有1位的期间。另外,在此从最下位位(LSB)向最上位位(MSB)依次传送DAT。
《波特率调整电路的详细结构》
图5是表示在图2的半导体集成电路装置中其波特率调整电路的详细的结构例的框图。图5的波特率调整电路BRCTL具备时钟计数器CKCUNT、位计数器BITCUNT、下降沿计数器FEGCUNT。CKCUNT、BITCUNT、FEGCUNT在图4所示的接收串行数据DBGI的每个域进行计数动作,在域改变时,将计数器值复位。此外,各域的检测通过检测起始位STR及停止位STP的未图示的电路进行。CKCUNT通过内部时钟信号CLKd对在DBGI内彼此相邻的各沿的期间(即各‘H’脉冲宽度及各‘L’脉冲宽度)进行计数。BITCUNT对DBGI的沿的数进行计数。FEGCUNT对DBGI的下降沿的数进行计数。
图5的波特率调整电路BRCTL还具备平均值运算部AVGC、最大值检测部MAXD、最小值检测部MIND、允许值判定部MXMNJGE、波特率设定可否判定部BRJGE、波特率设定寄存器REG_BR。AVGC运算CKCUNT的各计数的平均值。MAXD检测并保持CKCUNT的各计数的最大值,MIND检测并保持CKCUNT的各计数的最小值。MXMNJGE根据AVGC的运算结果运算最大允许值及最小允许值,以该各允许值为判定基准判定MAXD的最大值和MIND的最小值是否良好。具体而言,在MAXD的最大值和MIND的最小值收敛于MXMNJGE的最大允许值和最小允许值的范围内的情况下输出OK信号,在范围外的情况下输出NG信号。
波特率设定可否判定部BRJGE在下降沿计数器FEGCUNT的计数为预定的次数,并且从允许值判定部MXMNJGE输出了OK信号的情况下,输出设定结束信号(使能信号)ADJCMP。另一方面,在FEGCUNT的计数为预定次数,且从MXMNJGE输出了NG信号的情况下,输出错误信号ADJERR。此时,将在后面进行详细叙述,BRJGE反应串并行变换电路SPC(或片上调试电路OCD)的命令“8’h55”/命令“8’h65”的识别结果、内部复位信号RSTd_N的输入状况,进行该ADJCMP、ADJERR的生成。波特率设定寄存器REG_BR在生成了ADJCMP的情况下存储平均值运算部AVGC的运算结果,由此更新波特率的设定值。
《波特率调整电路的基本动作》
图5的波特率调整电路BRCTL大体如下动作。图6表示图5的波特率调整电路的时钟计数器及平均值运算部的动作例。如图6所示,波特率调整电路BRCTL内的时钟计数器CKCUNT为提高波特率的设定精度,通过内部时钟信号CLKd对起始位STR和波特率调整用命令“8’h55”的合计9位进行计数,测定各位的时间宽度。平均值运算部AVGC通过将该各位的时间宽度的合计值除以测定到的位数(在此为9)来计算平均值,且以该计算出的结果为基准值。此外,没有特别限定,但除法结果的小数部分被四舍五入。
图6的例中,9位的时钟计数为(7+6+7+7+6+7+7+7+6),通过将其除以9所得的结果四舍五入,作为基准值得到“7”。此时,波特率成为内部时钟信号CLKd的时钟频率(在此为12.5MHz)除以“7”所得的结果即1.786Mbps。此外,没有特别限定,但CLKd的时钟频率(图1的IRC的基准时钟频率)优选比图1的OSC的基准时钟频率(例如20MHz程度)低某程度。由此,如果检查OSC的基准时钟频率进行半导体集成电路DEV1的定时设计,则假如即使在CLKd的时钟频率产生偏差的情况下,也能够通过CLKd无问题地使DEV1进行动作。
图7是在图6中计算出的基准值成为错误时的一例的说明图。如图7所示,在接收串行数据DBGI的1位的时钟循环数的最大值比最小值的3倍大的情况下,波特率调整电路BRCTL不进行基准值进行的波特率的设定而通过允许值判定部MXMNJGE检测错误。这是因为,如图7所示,作为通过在位期间的中央的采样检测DBGI的各位的值的情况,在‘H’脉冲和‘L’脉冲的脉冲宽度之比在1/3~3的范围外时,产生无法正确地采样的情况及难以进行停止位STP的检测的情况。
在基于基准值进行波特率的设定时,该设定值在进行下一波特率调整时之前(命令“8’h55”到了之前),由波特率设定寄存器REG_BR保存,在与外部检查装置EQTST之间的串行通信中使用。另一方面,在通过波特率设定可否判定部BRJGE生成了错误信号ADJERR的情况下,在此,片上调试电路OCD等作为向EQTST侧的错误通知信号,例如在约10ms的期间向发送串行数据DBGO_N输出‘H’电平。此外,将在后面详细叙述,但除了在这样的波特率调整失败时以外,还在无法正确地检测停止位时,或者同时进行收发数据彼此冲突时等生成错误通知信号。
图8(a)、图8(b)表示图5的波特率调整电路的详细的动作例,图8(a)是无错误时的波形图,图8(b)是有错误时的波形图。如图8(a)、图8(b)所示,更详细地说,图5的波特率调整电路BRCTL例如如下那样动作。
[1]为了测定从外部检查装置EQTST向半导体集成电路装置DEV1发送的接收串行数据DBGI的1位的波特率,图5的时钟计数器CKCUNT以DBGI的最初的下降沿为起点,进行基于内部时钟信号CLKd的计数动作(周期计数)。另外,与其并行,图5的位计数器BITCUNT检测DBGI的沿(上升/下降),每次进行计数增加(位计数)。
[2]在时钟计数器CKCUNT的起始位(1位)STR和数据位(8位)DAT的合计9位期间的计数动作结束后,图5的平均值运算部AVGC通过该计数值除以位计数器BITCUNT的计数值,运算每1位的时钟计数值的平均值。在图8(a)的例中,9位的时钟计数值为(8+7+8+7+8+8+7+8+8),将其除以位计数的计数值(在此为9)且进行四舍五入,结果得到“8”。
[3]另外,如图7所示,当接收串行数据DBGI的‘L’脉冲和‘H’脉冲之比为3:1(或1:3)以上时,可能难以进行数据的正确的采样及停止位STP的检测。因此,如图8(a)所示,图5的最大值检测部MAXD基于时钟计数器CKCUNT的计数值和位计数器BITCUNT的沿检测信号,识别每个位的CKCUNT的计数值,且检测以及保持其中的最大值(在此为“8”)(max)。
同样,图5的最小值检测部MIND基于CKCUNT的计数值和位计数器BITCUNT的沿检测信号识别每个位的CKCUNT的计数值,检测以及保持其中的最小值(在此为“7”)(min)。
另外,如图8(a)所示,图5的允许值判定部MXMNJGE基于由平均值运算部AVGC得到的值(在此为“8”)进行运算,将其0.5倍作为最小允许值(在此为“4”)(cycle_count_min周期计数最小值),将其1.5倍作为最大允许值(在此为“C”)(cycIe_count_max周期计数最打值)。而且,在最大值检测部MAXD的检测值及最小值检测部MIND的检测值两方收敛于允许值判定部MXMNJGE的最小允许值和最大允许值的范围内的情况下,生成OK信号。另一方面,在MAXD的检测值及MIND的检测值的至少一方为MXMNJGE的最小允许值和最大允许值的范围外的情况下,生成NG信号。
[4]图5的波特率设定可否判定部BRJGE在从允许值判定部MXMNJGE输出OK信号,且由下降沿计数器FEGCUNT检测到5次下降沿的情况下,生成设定结束信号(使能信号)ADJCMP。另一方面,在从MXMNJGE输出NG信号,且由FEGCUNT检测到5次的下降沿的情况下,生成错误信号ADJERR。FEGCUNT是为了验证基于接收串行数据DBGI的命令是波特率调整用命令“8’h55“而设置。
在图8(a)的情况下,MAXD的检测值(“8”)和MIND的检测值(“7”)均收敛于最小允许值(“4”)和最大允许值(“C”)的范围内,因此,从允许值判定部MXMNJGE输出OK信号,接收该信号,波特率设定可否判定部BRJGE生成设定结束信号(使能信号)ADJCMP。另一方面,在图8(b)的情况下,由于MIND的检测值(「3」)在最小允许值(“4”)范围外,所以从MXMNJGE输出NG信号,接收该信号,BRJGE不生成ADJCMP而生成错误信号ADJERR。此外,实际上反应串并行变换电路SPC的命令识别结果及内部复位信号RSTd_N的输入状况,来进行ADJCMP、ADJERR的生成。
[5]图5的波特率设定寄存器REG_BR在从波特率设定可否判定部BRJGE生成了设定结束信号(使能信号)ADJCMP时,闩锁平均值运算部AVGC的运算结果(在此为“8”)。
如上,根据多位的平均值检测波特率,并且验证各位收敛于该平均值的0.5倍~1.5倍的范围内,由此可以进行高精度的波特率调整,另外同时可以进行波形品质的验证。由此,可以实现可靠性高的串行通信。此外,在此,虽然设为0.5倍~15倍的范围,但未必限定于该范围,考虑某程度的界限也可以设为例如0.6倍~1.4倍等。
《信号的收发动作》
其次,说明使用波特率调整电路BRCTL的波特率设定的信号的收发动作。如图5所示,把波特率设定寄存器REG_BR保存的波特率输入给串并行变换电路SPC及并串行变换电路PSC。在进行接收动作时,SPC一边通过该波特率采样接收串行数据DBGI一边将其变换成接收并行数据DBGPI,且将其发送给片上调试电路OCD。具体而言,SPC使用内部具备的计数器在其计数器值达到REG_BR的波特率(基准值)之前对内部时钟信号CLKd进行计数,按照起始位STR、数据位DAT、停止位STP的合计10位,进行该计数动作。而且,在每次进行该10位的各计数动作时,在计数值成为基准值的中央值的时刻进行采样,由在各位期间的中央的位置判别各位的值。
另一方面,在进行发送动作时,并串行变换电路PS取入来自片上调试电路OCD的发送并行数据DBGPO,将其通过由波特率设定寄存器REG_BR保持的波特率变换成发送串行数据DBGO_N。具体而言,PSC使用内部具备的计数器在该计数器值达到REG_BR的波特率(基准值)之前对内部时钟信号CLKd进行计数,按照起始位STR、数据位DAT、停止位STP的合计10位来进行该计数动作。而且,在每次进行10位的各计数动作时,按顺序每次发送1位的DBGPO的各位。
《波特率调整电路的按命令的动作》
<波特率初期设定(复位后的命令“8’h55”)>
图5中,当输入内部复位信号RSTd_N时,波特率调整电路BRCTL(具体而言波特率设定可否判定部BRJGE)向波特率设定用动作模式迁移。图2的外部检查装置EQTST在BRCTL(BRJGE)迁移到波特率设定用动作模式后,作为接收串行数据DBGI输出波特率调整用命令“8’h55”。在初期状态下,EQTST和半导体集成电路装置DEV1成为彼此不能识别动作频率,且命令的收发也困难的状态。因此,按照在复位后发行命令“8’h55”这样的规则,如图5~图8中所述,BRCTL根据该复位后的命令“8’h55”检测波特率,且在通过允许值判定部MXMNJGE输出了OK信号的情况下,进行波特率设定寄存器REG_BR的设定。此外,此时,BRCTL(BRJGE)由于在初期状态难以进行命令识别,所以可以无视来自图5所示的串并行变换电路SPC的命令识别信号,而仅以RSTd_N向波特率设定用动作模式迁移。
<波特率修正(单独的命令“8’h55”)>
图9表示在图5的波特率调整电路中波特率的误差的影响的一例。如图9的事例1所示,如果将‘H’脉冲和‘L’脉冲的宽度的比率设为1:1,且波特率的误差不足5%,则可以正确地串并行变换数据。允许误差为5%的理由之一在于,如图9的事例3所示,可能无法正确地检测停止位STP。为了在位期间的中央对位的检测进行采样,所以从起始位STR的下降到停止位STP的采样存在9.5位的期间。在此,在与设定了要发送的数据的波特率的波特率存在-5%的误差时,在检测停止位STP时蓄积误差,产生1位的50%的偏差,可能无法正确地检测STP。
另外,允许的误差为5%的另一个理由在于,如图9的事例2所示,可能难以进行正确的串并行变换。在与设定了要发送的数据的波特率的波特率存在+5%的误差的情况下,无法正确地进行串并行变换,可能变换成不同的数据。在图9的事例2的例中,本来应为“8’h55”的数据变换成“8’hAD”。因此,为了不产生这样的5%以上的误差,具备在每次输入接收串行数据DBGI时使波特率调整电路BRCTL动作,并且在DBGI的值为命令“8’h55”的情况下,进行波特率修正的结构。即,图5的内部时钟信号CLKd的频率例如有可能根据温度变动或电压变动等,误差随时间扩大。因此,具备在误差成为5%以上之前从外部检查装置EQTST向半导体集成电路装置DEV1定期地单独发送命令“8’h55”,由此进行波特率修正的结构。
此时,如图5~图8所示,虽然进行波特率的修正,但与上述的“<波特率初期设定>”的情况不同,需要在检测到停止位STP后事后判别命令是否为“8’h55”。因此,图5中,波特率调整电路BRCTL(具体而言为BRJGE)经由SPC(或OCD)发行命令识别信号(“8’h55”),且通过FEGCUNT检测5次的下降沿,且在从MXMNJGE输出OK信号时,进行波特率设定寄存器REG_BR的更新。
此时,假如仅通过下降沿计数器FEGCUNT识别命令“8’h55”,则例如在接收到图10所示的数据时,可能产生命令“8’h55”的误识别。图10是表示在图5的波特率调整电路中产生命令误识别的情况的一例的说明图。图10的例中,半导体集成电路装置DEV1连续2次接收“8’h33”的数据。该2个域的“8’h33”的数据有时可以看做正好与1个域的“8’h55”相同。此时,伴随FEGCUNT 5次检测到下降而误解释为命令“8’h55”,因此有可能进行错误的波特率修正。
因此,一并使用串并行变换电路SPC(或片上调试电路OCD)的命令识别结果。SPC通过使用之前由波特率设定寄存器REG_BR保存的波特率进行的采样,来进行命令识别,因此,能够防止图10那样的命令的误识别。此外,在未设置下降沿计数器FEGCUNT的情况下,如上述的“<波特率初期设定>”那样,在难以进行SPC的正常的动作时,命令“8’h55”的验证有可能不充分,因此,从该观点考虑设置FEGCUNT是有益的。
此外,在内部时钟信号CLKd的频率误差逐渐扩大的情况下,如上所述,通过进行定期的波特率修正,能够维持正常的串行通信,但在由于某种原因CLKd的频率误差急剧扩大的情况下,难以进行波特率修正。假如在频率偏移急剧超过+5%的情况下,如图9所示,无法正确地识别停止位STP,因此能够检测错误。另外,在频率偏移急剧超过-5%的情况下,通过串并行变换电路SPC变换为不是“8’h55”的数据,所以无法修正波特率。
<波特率变更(命令“8’h65”→命令“8’h55”)>
图11是表示在图5的波特率调整电路中要进行波特率的变更时的动作例的说明图。例如,外部检查装置EQTST侧有时要通过与现在设定的波特率不同的波特率发送数据。如“<波特率修正>”所述,在要进行5%以上的波特率变更的情况下,由于不能进行命令自身的识别,所以通过单独的命令“8’h55”变更波特率是困难的。
这种情况下,如图11所示,在从EQTST通过变更前的波特率发送了作为调整波特率的前提的命令“8’h65”后,以变更后的波特率发送波特率调整用命令“8’h55”。于是,波特率调整电路BRCTL(具体而言为波特率设定可否判定部BRJGE)在经由串并行变换电路SPC(或OCD)识别了命令“8’h65”后,与上述的“<波特率初期设定>”的内部复位信号RSTd_N的情况相同,迁移到波特率设定用动作模式。之后,与上述的“<波特率初期设定>”的情况相同地进行波特率的变更。
如上,通过设置3种波特率设定方式,可以在外部检查装置EQTST和半导体集成电路装置DEV1之间高精度地设定任意的波特率。另外,即使在DEV1中使用低成本的振荡电路的情况下,也能够在EQTST和DEV1之间遍及充分的器件维持进行正常的串行通信的状态。此时,如专利文献2所示,不仅在各帧设置同步域进行波特率修正的方式,而且使用通过以任意的定时发送命令“8’h55”而进行波特率修正的方式,因此实现通信效率的提高。
《片上调试电路的详情》
图12是表示在图2的片上调试用控制块中该片上调试电路的主要的动作例的状态迁移图。如图12所示,片上调试电路OCD具备空闲状态IDLE、闪速存储器访问状态FACCS、JTAG访问状态JACCS。FACCS还具备闪速存储器控制器写入状态FCON_WT和闪速存储器控制器读出状态FCON_RD。JACCS还具备5个JTAG辅助访问状态JTAG_0~JTAG_4。
也如图3等所述,片上调试电路OCD在空闲状态IDLE下输入了命令“8’h55”或“8’h65”的情况及输入了命令“8’hFF”的情况下,由于该各命令为波特率调整用的命令或复位用命令,所以维持IDLE。另外,OCD在IDLE中输入了命令“8’h6A”的情况下,迁移到闪速存储器控制器写入状态FCON_WT,在输入了命令“8’hEA”的情况下,迁移到闪速存储器控制器读出状态FCON_RD。FCON_WT,FCON_RD中,如图2所述,经由OCD进行串行接口SIF和闪速存储器控制器FCON(闪速存储器FMEM)之间的数据收发。图12中,OCD在FCON_WT或FCON_RD的期间进行了预定的规定次数的数据收发后,返回空闲状态IDLE。
另外,片上调试电路OCD在空闲状态IDLE中输入了命令“8’bxxxxxx00”的情况下,迁移到JTAG辅助访问状态JTAG_0。之后,每次按顺序输入命令“8’bxxxxxx00”时,按JTAG_1→JTAG_2→JTAG_3的顺序迁移,之后,自动迁移到JTAG_4后,返回空闲状态IDLE。该JTAG_0~JTAG_4中,可以接收波特率调整用的命令(“8’h55”或“8’h65”),也可以边进行JTAG访问边进行上述的波特率修正及波特率变更。此外,JTAG访问状态JACCS中,如图2所述,经由OCD进行串行接口SIF和CPU内的JTAGIF之间的数据收发。
《闪速存储器访问状态的详情》
如图12等所述,当从外部检查装置EQTST向半导体集成电路装置DEV1发送了命令“8’h6A”时,DEV1向闪速存储器控制器写入状态FCON_WT迁移,可以从EQTST向闪速存储器控制器FCON的内部寄存器直接进行写入访问。另外,在从EQTST向DEV1发送了命令“8’hEA”时,DEV1向闪速存储器控制器读出状态FCON_RD迁移,可以从EQTST向FCON的内部寄存器直接进行读出访问。向FCON的处理通过传送数据数达到另外设定的预定的次数而完成。当向FCON的处理完成时,DEV1自动脱离该状态,返回可以进行波特率的调整的空闲状态IDLE。
这样,在闪速存储器访问状态FACCS中,由于可以从外部检查装置EQTST不经由半导体集成电路装置DEV1内部的JTAG等直接访问闪速存储器控制器FCON的内部寄存器,所以可以高速地进行闪速存储器FMEM的写入及读出。由此,实现调试效率的提高等。
图13是表示在图2的串行通信系统(调试系统)中从外部检查装置向半导体集成电路装置的闪速存储器写入访问的动作例的说明图。如图3等所示,命令“8’h55”和“8’h65”准备了波特率调整用、波特率调整用的前提命令,因此,可能难以将与该命令相同的值的数据写入闪速存储器FMEM。因此,如图12等所述,通过设置闪速存储器访问状态FACCS且在该状态的期间进行闪速存储器访问,可以取代无法调整波特率,如图13所示将“8’h55”和“8’h65”(图13的例中为“8’h55”)作为数据进行处理。
《JTAG访问状态的详细》
图14是表示在图2的串行通信系统(调试系统)中从外部检查装置向半导体集成电路装置的JTAG访问的动作例的说明图。如图12等所示,通过从外部检查装置EQTST向半导体集成电路装置DEV1发送命令“8’bxxxxxx00”,DEV1迁移到JTAG访问状态JACCS。在JTAG访问状态下,如图14所示,在从EQTST向DEV1发送的1个域的8位信息中,将下位2位作为命令设定为0,对剩余的6位分配两组的TCK位、TMS位、TDI位。而且,通过从EQTST向DEV1进行4个域的送信,总计向CPU的JTAGIF发送8位的数据(TDI)。
此时,片上调试电路OCD基于与该4个域相伴的8个(相0~相7)的TCK位生成8循环的TCK信号,并且基于8个TMS位及TDI位生成8循环的TMS信号及TDI信号。在此,在TCK位为‘0’的情况下,作为TCK信号生成上升沿,在TCK位为‘1’的情况下,作为TCK信号生成‘H’电平信号。而且,OCD向CPU的JTAGIF依次发送该8循环的TCK信号、TMS信号、TDI信号。
CPU的JTAGIF根据该8循环的TDI信号发送8位的TDO信号。图2中,片上调试电路OCD收集该8位的TDO信号并将其作为发送并行数据DBGPO发送到串行接口电路SIF。接收到该数据,SIF使用并串行变换电路PSC将该DBGPO变换成发送串行数据DBGO_N,如图14所示,半导体集成电路装置DEV1向外部检查装置EQTST发送包含该8位的TDO信号的1个域的串行数据。此外,图14的相0,1与图12的JTAG_0相对应,之后相同,图14的相6,7与图12的JTAG_3相对应,图14的从DEV1向EQTST的发送与图12的JTAG_4相对应。另外,根据图12可知,在图14的动作的期间,也可以适宜进行波特率修正或波特率变更。
通过设置这样的JTAG访问状态,可以高效地进行JTAG访问,结果实现调试效率的提高等。即,通过图3所示的命令分配的研究,半导体集成电路装置DEV1可以仅通过1域内的下位2位判别为JTAG访问命令。因此,如图14所示,通过从外部检查装置EQTST向DEVl发送1域的串行数据,可以活用剩余的6位,通知2循环的JTAG信号(TCK,TMS,TDI)的信息。另一方面,在未进行这样的命令分配的研究的情况下,例如需要另外使用1域的串行数据暂时迁移到JTAG访问状态,迁移到该状态后依次通知JTAG信号的信息的处理,域数增加。
《复位功能的详情》
图15是表示图2的片上调试电路具备的复位功能的一例的概念图。图15表示图2的半导体集成电路装置DEV1整体的复位路径。图16是表示图15的各种复位源和其效力范围的一例的说明图。如图15所示,DEV1作为该复位路径,从复位控制电路RSTCTL向后级依次具备:片上调试电路OCD、看门狗计时电路WDT、闪速存储器控制器FCON、处理器单元CPU、各种周边电路PERI。WDT在经过了预定的时间后向后级强制生成复位信号,而且在输入了复位信号时也向后级生成复位信号。PERI没有特别限定,但例如相当于图1的模拟电路块ANLG_BK或数字电路块DGTL_BK等。
复位控制电路RSTCTL在从外部端子PN_RST输入了复位信号RST的情况、或从接通复位电路POR生成了复位信号的情况下,输出内部复位信号RSTd_N。在此,以负逻辑的复位信号为前提,RSTCTL使用放大运算输出RSTd_N。POR在检测到接通电源时生成复位信号。片上调试电路OCD在从RSTCTL输入了RSTd_N的情况、或如图3等所示从外部检查装置EQTST输入了命令“8’hFF”的情况下,向后级生成复位信号。
例如,在进行调试的过程中,有时要将半导体集成电路装置DEV1整体复位。这种情况下,通常JTAG接口具备复位功能,所以考虑从外部检查装置EQTST向CPU内的JTAGIF进行预定的访问。但是,该情况下,如图16所示,该复位的效力范围在CPU以及其后级的各种周边电路PERI,未波及包含闪速存储器控制器FCON等在内的DEV1全体。另一方面,为将DEV1整体复位,考虑对外部端子PN_RST施加复位信号RST。该情况下,例如需要手动按压连接于PN_RST附近的复位按钮等的作业,因此,特别是在DEV1和EQTST存在距离的状态下进行调试时,可能调试效率降低。
因此,如图15所示,由于片上调试电路OCD具备基于命令“8’hFF”的复位功能,从而与来自外部的复位信号RST的情况大致相同地,可以包含看门狗计时电路WDT和闪速存储器控制器FCON等在内将几乎整个半导体集成电路装置DEV1进行复位。此时,由于只要从外部检查装置EQTST向DEV1发送命令即可,所以对于用户的便利性高,实现调试效率的提高。
以上,通过使用本实施方式的电子装置,可以代表性地实现高精度的波特率调整。另外,由于水晶振子等外部零件不是特别必要的,而使用一条串行配线进行调试,所以实现了调试成本的降低。另外,在进行调试时,包含串行通信时的通信效率的提高,实现调试效率的提高。此外,在此,以调试系统为例进行了说明,但当然不限定于此,对于通常的串行通信系统(UART)同样也可以使用。该情况下,同样得到实现高精度的波特率调整、降低串行通信系统的成本、提高串行通信系统的通信效率等效果。
《各种变形例》
<波特率调整电路的动作>
至此的说明中,如图6等所示,使用起始位(1位)STR和与起始位连续的数据位(8位)DAT的合计9位的平均值进行波特率的计算,但不特别限定于此,只要是合计2位以上的平均值即可。例如,当使用1位的STR和与STR连续的7位的DAT的合计8位的平均值时,可通过位移寄存器等实现除法处理,因此,相比使用合计9位的情况,实现除法处理的容易化及除法电路的面积降低等。从该观点来看,也可以使用合计4位或合计2位等。但是,由于位数越多,波特率的检测精度越高,所以也调查上述的除法处理,特别希望设为合计9位或合计8位。
<命令分配>
图17是表示图6的变形例的说明图。如图17所示,波特率调整用的命令未必限定于“8’h55”,而如图17所示,也可以是命令“8’h33”或其它的值。例如图17的例,在命令“8’h33”的情况下,只要预先在波特率调整电路BRCTL(例如图5的位计数器BITCUNT)中存储起始位STR之后的沿间的时钟循环数为“2”的旨意即可。但是,从通过计算更多的位数的平均值来实现高精度化的观点来看,优选为“8’h55”。
另外,其它命令分配也不特别限定于图3的值,可以适宜变更为任意的值。但是,关于JTAG访问,如上所述,优选以通过8位中的一部分位可特定的方式进行命令分配。另外,在此,作为经由片上调试电路OCD可直接进行访问的模块,表示闪速存储器控制器FCON及JTAG,但也可以进一步追加其它模块。该情况下,相对于该其它的模块也同样适当地进行命令分配,只要设定图12等所示的内部状态即可。
<半导体集成电路装置的构成>
图18是表示将图2的半导体集成电路装置进行了变形的构成例的框图。图18所示的半导体集成电路装置DEV2与图2的DEV1相比,成为在DEV2内不具备振荡电路及复位控制电路,而在外部具备振荡电路OSC’及复位控制电路RSTCTL’的结构。即,例如在串行通信系统内具备在半导体集成电路装置DEV2的外部预先生成时钟信号CLK的电路及生成复位信号RST的电路等的情况下,也可以利用该CLK、RST进行串行通信。
以上基于实施方式具体说明了本发明者进行的发明,但本发明不限于上述实施方式,在不脱离其宗旨的范围内可以进行各种变更。
工业上的可利用性
本实施方式的电子装置特别适用于适用包含精度低的振荡器的MCU(Micro Control Unit等半导体集成电路装置的制品,但不限于此,对于具备非同步串行通信功能的所有制品都能够广泛应用。具体而言,例举例如装配有JTAG功能及闪速存储器等的半导体集成电路装置、以及具备该半导体集成电路装置的通信装置等。

Claims (16)

1.一种电子装置,与具有通信功能的其它装置进行串行通信,其特征在于,
所述电子装置具备包含波特率调整电路并与所述其它装置进行串行通信的串行接口电路和生成内部时钟信号的时钟生成电路,在与所述其它装置连接的状态下接收来自所述其它装置的串行信号,
所述串行信号由1位的起始位、与起始位连续的多位的数据位、与数据位连续的1位的停止位构成,
所述波特率调整电路执行以下处理:
(a)通过基于所述时钟生成电路生成的所述内部时钟信号的计数动作,测定用于构成接收到的所述串行信号的各位的时间宽度;
(b)检测所述测定的各位的时间宽度的最大值和最小值;
(c)运算所述测定的各位的时间宽度的平均值;
(d)根据所述各位的时间宽度的平均值运算最大允许值和最小允许值;
(e)判别所述最大值和所述最小值是否在所述最大允许值和所述最小允许值的范围内;
(f)在所述最大值和所述最小值在所述范围内时,设定与所述平均值对应的波特率,
所述电子装置通过所述设定的波特率执行与所述其它装置之间的串行通信。
2.根据权利要求1所述的电子装置,其特征在于,
所述电子装置还具备命令识别部,其根据所述设定的波特率识别接收的所述串行信号内的所述数据位的值是否为预先规定的波特率调整用命令的值,
所述波特率调整电路具备:
第一波特率设定模式,在接收到所述串行信号时,与所述命令识别部对于该串行信号的识别结果无关地执行所述(a)~(f)处理;以及
第二波特率设定模式,在接收到所述串行信号时,执行所述(a)~(e)处理,并且在所述命令识别部从该串行信号中识别出所述波特率调整用命令的情况下,执行所述(f)处理。
3.根据权利要求2所述的电子装置,其特征在于,
所述波特率调整电路在输入了复位信号时,以之后接收到的1个所述串行信号为对象执行所述第一波特率设定模式下的处理。
4.根据权利要求3所述的电子装置,其特征在于,
所述命令识别部还根据所述设定的波特率识别接收到的所述串行信号内的所述数据位的值是否为预先规定的波特率调整用前提命令的值,
所述波特率调整电路在所述命令识别部识别出所述波特率调整用前提命令时,以之后接收到的1个所述串行信号为对象执行所述第一波特率设定模式下的处理。
5.根据权利要求3所述的电子装置,其特征在于,
所述时钟生成电路是环形振荡电路。
6.根据权利要求3所述的电子装置,其特征在于,
所述(d)处理中的所述最大允许值为所述平均值的大致1.5倍,
所述(d)处理中的所述最小允许值为所述平均值的大致0.5倍。
7.根据权利要求3所述的电子装置,其特征在于,
所述电子装置还具备基于JTAG规格的JTAG接口电路和协议变换部,
所述命令识别部还根据所述设定的波特率识别接收到的所述串行信号内的所述数据位的值是否为预先规定的JTAG访问用命令的值,
所述协议变换部在所述命令识别部识别出所述JTAG访问用命令时,将所述串行信号变换成所述JTAG接口电路中所需的多个信号。
8.根据权利要求7所述的电子装置,其特征在于,
所述电子装置还具备非易失性存储器和控制向所述非易失性存储器的写入/读出动作的存储器控制器,
所述命令识别部还根据所述设定的波特率识别接收到的所述串行信号内的所述数据位的值是否为预先规定的非易失性存储器访问用命令的值,
所述电子装置在所述命令识别部识别出所述非易失性存储器访问用命令时,将所述串行信号传送给所述存储器控制器,
所述命令识别部在所述电子装置进行预定的规定次数的所述串行信号向所述存储器控制器的传送的期间,暂时停止以该串行信号为对象的各命令的识别处理。
9.一种电子装置,其具备与外部检查装置串行通信地连接,并且能够在所述外部检查装置和电子装置中装配的内部电路之间进行通信的结构,其特征在于,
所述电子装置包含实现所述电子装置的功能的内部电路、生成内部时钟信号的时钟生成电路、实现与所述内部电路的串行通信的控制电路块,能够设定通过所述内部电路实现所述电子装置的功能的第一动作模式和能够通过所述外部检查装置在串行通信下向所述电子装置的所述内部电路访问的第二动作模式,
所述控制电路块具备在与所述外部检查装置之间进行串行通信的通信用端子、与所述通信用端子连接的串行接口电路、控制所述串行接口电路和所述电子装置的所述内部电路的通信的控制电路,在所述第二动作模式时,在与所述外部检查装置连接的状态下接收来自所述外部检查装置的串行信号,
所述串行信号由1位的起始位、与起始位连续的多位的数据位、与数据位连续的1位的停止位构成,
所述串行接口电路具备:
把所述通信用端子接收到的所述串行信号变换成并行信号的串并行变换电路;
把从所述内部电路接收到的并行信号变换成串行信号,并向所述通信用端子发送的并串行变换电路;
设定所述串并行变换电路及所述并串行变换电路的动作定时的波特率调整电路,
所述波特率调整电路执行以下的处理:
(a)以在设定为所述第二动作模式的状态下经由所述通信用端子接收到的所述串行信号为对象,通过基于所述时钟生成电路生成的所述内部时钟信号的计数动作测定构成该串行信号的各位的时间宽度;
(b)检测所述测定到的各位的时间宽度的最大值和最小值;
(c)运算所述测定到的各位的时间宽度的平均值;
(d)基于所述各位的时间宽度的平均值运算最大允许值和最小允许值;
(e)判别所述最大值和所述最小值是否在所述最大允许值和所述最小允许值的范围内;
(f)在所述最大值和所述最小值在所述范围内的情况下,设定与所述平均值对应的波特率,
所述控制电路块通过所述设定的波特率执行与所述外部检查装置之间的经由所述通信用端子的串行通信。
10.根据权利要求9所述的电子装置,其特征在于,
所述控制电路包含命令识别部,其根据所述设定的波特率识别接收到的所述串行信号内的所述数据位的值是否为预先规定的波特率调整用命令的值,
所述波特率调整电路具备:
第一波特率设定模式,在接收到所述串行信号时,与所述命令识别部对于该串行信号的识别结果无关地执行所述(a)~(f)处理;以及
第二波特率设定模式,在接收到所述串行信号时,执行所述(a)~(e)处理,并且在所述命令识别部从该串行信号中识别出所述波特率调整用命令的情况下,执行所述(f)处理。
11.根据权利要求10所述的电子装置,其特征在于,
所述波特率调整电路在输入了复位信号时,以之后接收到的1个所述串行信号为对象执行所述第一波特率设定模式下的处理。
12.根据权利要求11所述的电子装置,其特征在于,
所述命令识别部还根据所述设定的波特率识别接收到的所述串行信号内的所述数据位的值是否为预先规定的波特率调整用前提命令的值,
所述波特率调整电路在所述命令识别部识别出所述波特率调整用前提命令时,以之后接收到的1个所述串行信号为对象执行所述第一波特率设定模式下的处理。
13.根据权利要求11所述的电子装置,其特征在于,
所述时钟生成电路是环形振荡电路。
14.根据权利要求11所述的电子装置,其特征在于,
所述(d)处理中的所述最大允许值为所述平均值的大致1.5倍,
所述(d)处理中的所述最小允许值为所述平均值的大致0.5倍。
15.根据权利要求11所述的电子装置,其特征在于,
所述电子装置还包含处理电路,该处理电路包含基于JTAG规格的JTAG接口电路,
所述控制电路还具备协议变换部,
所述命令识别部还根据所述设定的波特率识别接收到的所述串行信号内的所述数据位的值是否为预先规定的JTAG访问用命令的值,
所述协议变换部在所述命令识别部识别出所述JTAG访问用命令时,把所述串行信号变换成所述JTAG接口电路中所需的多个信号。
16.根据权利要求15所述的电子装置,其特征在于,
所述内部电路还具备非易失性存储器和控制向所述非易失性存储器的写入/读出动作的存储器控制器,
所述命令识别部还根据所述设定的波特率识别接收到的所述串行信号内的所述数据位的值是否为预先规定的非易失性存储器访问用命令的值,
所述控制电路在所述命令识别部识别出所述非易失性存储器访问用命令时,将所述串行信号传送到所述存储器控制器,
所述命令识别部在所述电子装置进行预定的规定次数的所述串行信号向所述存储器控制器的传送的期间,暂时停止以该串行信号为对象的各命令的识别处理。
CN201210511124.7A 2011-12-06 2012-12-03 电子装置 Active CN103150283B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011266856A JP5891758B2 (ja) 2011-12-06 2011-12-06 電子装置
JP2011-266856 2011-12-06

Publications (2)

Publication Number Publication Date
CN103150283A true CN103150283A (zh) 2013-06-12
CN103150283B CN103150283B (zh) 2015-09-30

Family

ID=48524847

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210511124.7A Active CN103150283B (zh) 2011-12-06 2012-12-03 电子装置

Country Status (4)

Country Link
US (1) US8782300B2 (zh)
JP (1) JP5891758B2 (zh)
CN (1) CN103150283B (zh)
TW (1) TWI475864B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104008080A (zh) * 2014-06-17 2014-08-27 杭州士兰微电子股份有限公司 串行数据解析方法和装置
CN105763042A (zh) * 2014-12-19 2016-07-13 三垦电气株式会社 控制装置以及电力转换装置
CN106788920A (zh) * 2016-12-19 2017-05-31 珠海格力电器股份有限公司 一种波特率偏差检测方法、装置及空调室内机
CN111459727A (zh) * 2019-12-25 2020-07-28 山东有人信息技术有限公司 串口波特率最大无错容忍范围的智能自动化测试系统及测试方法
CN114070670A (zh) * 2021-10-21 2022-02-18 杭州奥能电源设备有限公司 一种基于rs485环形网络的分布式系统及操作方法
TWI782634B (zh) * 2021-07-22 2022-11-01 新唐科技股份有限公司 晶片傳送速度偵測方法及電子裝置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9384152B2 (en) 2010-02-23 2016-07-05 Rambus Inc. Coordinating memory operations using memory-device generated reference signals
JPWO2013011620A1 (ja) * 2011-07-19 2015-02-23 パナソニック株式会社 マルチプロセッサシステム
JP5891758B2 (ja) * 2011-12-06 2016-03-23 サンケン電気株式会社 電子装置
JP6241366B2 (ja) * 2014-05-21 2017-12-06 トヨタ自動車株式会社 制御装置
US10503134B2 (en) 2016-07-29 2019-12-10 Semiconductor Components Industries, Llc Motor driver with multipurpose pin
CN109495408B (zh) * 2017-09-13 2021-06-22 瑞昱半导体股份有限公司 波特率跟踪及补偿装置与方法
CN108415868B (zh) * 2018-05-04 2024-05-28 浙江海呐科技有限公司 一种串行通讯电路及温盐深探测系统
CN112988641A (zh) * 2019-12-13 2021-06-18 杭州中天微系统有限公司 一种通用异步收发传输器和包含该传输器的处理器
CN114490487B (zh) * 2022-02-16 2023-12-19 瀚云科技有限公司 一种串口信息获取方法、装置、设备及存储介质
US20230318788A1 (en) * 2022-04-01 2023-10-05 AyDeeKay LLC dba Indie Semiconductor Single-Thread Detection of Valid Synchronization Headers

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263033B1 (en) * 1998-03-09 2001-07-17 Advanced Micro Devices, Inc. Baud rate granularity in single clock microcontrollers for serial port transmissions
US6381532B1 (en) * 2000-09-20 2002-04-30 Visteon Global Technologies, Inc. Queued port data controller for microprocessor-based engine control applications
CN1354425A (zh) * 2000-10-25 2002-06-19 精工爱普生株式会社 串行/并行转换电路、数据传送控制装置和电子设备
CN1398093A (zh) * 2002-01-26 2003-02-19 深圳市朗科科技有限公司 用于数据处理系统的无线数据通信方法及装置
TWI262719B (en) * 2004-02-06 2006-09-21 Broadcom Corp Method and system for an integrated VSB/QAM/NTSC/OOB plug-and-play DTV receiver

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4972368A (en) * 1988-03-04 1990-11-20 Stallion Technologies, Pty. Ltd. Intelligent serial I/O subsystem
US5119403A (en) * 1991-04-09 1992-06-02 Racal Data Communications Inc. Superframes
US5649122A (en) * 1994-06-24 1997-07-15 Startech Semiconductor, Inc. Universal asynchronous receiver/transmitter with programmable xon/xoff characters
US6307868B1 (en) * 1995-08-25 2001-10-23 Terayon Communication Systems, Inc. Apparatus and method for SCDMA digital data transmission using orthogonal codes and a head end modem with no tracking loops
US5923705A (en) * 1996-07-18 1999-07-13 Qualcomm Incorporated UART based autobauding without data loss
JPH11272571A (ja) 1998-03-23 1999-10-08 Tietech Co Ltd ボーレートの自動調整方法
TWI230346B (en) * 2003-10-09 2005-04-01 Inventec Corp Method and system for collecting information data
JP4198089B2 (ja) * 2004-05-21 2008-12-17 富士通マイクロエレクトロニクス株式会社 通信システム
JP2011035473A (ja) * 2009-07-29 2011-02-17 Renesas Electronics Corp ボーレートエラー検出回路、ボーレートエラー検出方法
JP2011124882A (ja) * 2009-12-11 2011-06-23 Renesas Electronics Corp 非同期型通信確立方法および非同期型通信システム
JP5093261B2 (ja) * 2010-02-22 2012-12-12 株式会社デンソー 同期信号検出装置
JP5891758B2 (ja) * 2011-12-06 2016-03-23 サンケン電気株式会社 電子装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263033B1 (en) * 1998-03-09 2001-07-17 Advanced Micro Devices, Inc. Baud rate granularity in single clock microcontrollers for serial port transmissions
US6381532B1 (en) * 2000-09-20 2002-04-30 Visteon Global Technologies, Inc. Queued port data controller for microprocessor-based engine control applications
CN1354425A (zh) * 2000-10-25 2002-06-19 精工爱普生株式会社 串行/并行转换电路、数据传送控制装置和电子设备
CN1398093A (zh) * 2002-01-26 2003-02-19 深圳市朗科科技有限公司 用于数据处理系统的无线数据通信方法及装置
TWI262719B (en) * 2004-02-06 2006-09-21 Broadcom Corp Method and system for an integrated VSB/QAM/NTSC/OOB plug-and-play DTV receiver

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104008080A (zh) * 2014-06-17 2014-08-27 杭州士兰微电子股份有限公司 串行数据解析方法和装置
CN104008080B (zh) * 2014-06-17 2017-06-27 杭州士兰微电子股份有限公司 串行数据解析方法和装置
CN105763042A (zh) * 2014-12-19 2016-07-13 三垦电气株式会社 控制装置以及电力转换装置
CN105763042B (zh) * 2014-12-19 2018-11-16 三垦电气株式会社 控制装置以及电力转换装置
CN106788920A (zh) * 2016-12-19 2017-05-31 珠海格力电器股份有限公司 一种波特率偏差检测方法、装置及空调室内机
CN106788920B (zh) * 2016-12-19 2019-08-23 珠海格力电器股份有限公司 一种波特率偏差检测方法、装置及空调室内机
CN111459727A (zh) * 2019-12-25 2020-07-28 山东有人信息技术有限公司 串口波特率最大无错容忍范围的智能自动化测试系统及测试方法
CN111459727B (zh) * 2019-12-25 2023-07-14 山东有人物联网股份有限公司 串口波特率最大无错容忍范围的智能自动化测试系统及测试方法
TWI782634B (zh) * 2021-07-22 2022-11-01 新唐科技股份有限公司 晶片傳送速度偵測方法及電子裝置
CN114070670A (zh) * 2021-10-21 2022-02-18 杭州奥能电源设备有限公司 一种基于rs485环形网络的分布式系统及操作方法

Also Published As

Publication number Publication date
CN103150283B (zh) 2015-09-30
TW201336283A (zh) 2013-09-01
JP2013120979A (ja) 2013-06-17
US20130145084A1 (en) 2013-06-06
TWI475864B (zh) 2015-03-01
US8782300B2 (en) 2014-07-15
JP5891758B2 (ja) 2016-03-23

Similar Documents

Publication Publication Date Title
CN103150283A (zh) 电子装置
US10108578B2 (en) Single wire communications interface and protocol
CN203069745U (zh) 高精度时钟类芯片输出脉冲时间间隔检测装置
CN105790756B (zh) 一种利用uart通讯校准时钟的方法及装置
US7047155B2 (en) Bus interface
CN101908012A (zh) 时钟信号测试装置及测试方法
CN113836075B (zh) 一种基于fpga平台的spi接口信号消除毛刺的方法
CN102928805A (zh) 多表位数字化电能表校验仪
CN112099568A (zh) Uart串口主从通信的时钟频率校准和频率测量方法
CN102622325B (zh) I2c总线启动与停止电路结构
US20110026664A1 (en) Counter/Timer Functionality in Data Acquisition Systems
CN103901382A (zh) 一种时间电流表的校准检测装置
CN1333529C (zh) 一种电子设备中时钟信号检测方法和装置
Liu et al. Multi-functional serial communication interface design based on FPGA
CN110750399A (zh) 一种串口误码率测试方法及装置、计算机设备、可读存储介质
US8645742B2 (en) Semiconductor device operating according to an operation clock and having a serial communication interface performing external communications according to a unit transfer time based on the operation clock
CN109361567B (zh) 一种测试批次产品uart通讯兼容性的方法及装置
CN205375041U (zh) Can总线控制器
US7984206B2 (en) System for debugging throughput deficiency in an architecture using on-chip throughput computations
CN103698603A (zh) 一种芯片和其时钟测试方法以及芯片时钟测试系统
CN105530656B (zh) 一种无线传感器网络时间同步性能评估方法及系统
Sung et al. Front-end gateway system with serial communication protocol conversion and edge computing platforms
CN103326898B (zh) 一种以太接口链接建立时间的检测系统及方法
CN109863410A (zh) 上电复位时间的测量方法及系统
Srinivasan SystemVerilog Verification of Wishbone-Compliant Serial Peripheral Interface

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: SANKEN ELECTRIC CO., LTD.

Free format text: FORMER OWNER: HITACHI ULSI SYSTEMS CO., LTD.

Effective date: 20140307

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20140307

Address after: Saitama Prefecture, Japan

Applicant after: Sanken Electric Co., Ltd.

Address before: Tokyo, Japan, Japan

Applicant before: Hitachi ULSI Systems Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant