91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

PCI總線的中斷信號(hào)與中斷控制器的連接關(guān)系

SwM2_ChinaAET ? 來(lái)源:未知 ? 作者:李倩 ? 2018-04-11 09:12 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

PCI總線使用INTA#、INTB#、INTC#和INTD#信號(hào)處理器發(fā)出中斷請(qǐng)求。這些中斷請(qǐng)求信號(hào)為低電平有效,并與處理器的中斷控制器連接。在PCI體系結(jié)構(gòu)中,這些中斷信號(hào)屬于邊帶信號(hào)(Sideband Signals),PCI總線規(guī)范并沒(méi)有明確規(guī)定在一個(gè)處理器系統(tǒng)中如何使用這些信號(hào),因?yàn)檫@些信號(hào)對(duì)于PCI總線是可選信號(hào)。所謂邊帶信號(hào)是指這些信號(hào)在PCI總線中是可選信號(hào),而且只能在一個(gè)處理器系統(tǒng)的內(nèi)部使用,并不能離開(kāi)這個(gè)處理器環(huán)境。

注:PCI Spec對(duì)邊帶信號(hào)的定義如下:

Any signal not part of the PCI specification that connects two or more PCI-compliant agents and has meaning only to those agents.

完整的PCI信號(hào)結(jié)構(gòu)圖如下:

中斷信號(hào)與中斷控制器的連接關(guān)系

PCI總線規(guī)范沒(méi)有規(guī)定PCI設(shè)備的INTx信號(hào)如何與中斷控制器的IRQ_PINx#信號(hào)相連,這為系統(tǒng)軟件的設(shè)計(jì)帶來(lái)了一定的困難,為此系統(tǒng)軟件使用中斷路由表存放PCI設(shè)備的INTx信號(hào)與中斷控制器的連接關(guān)系。在x86處理器系統(tǒng)中,BIOS可以提供這個(gè)中斷路由表,而在PowerPC處理器中Firmware也可以提供這個(gè)中斷路由表。

在一些簡(jiǎn)單的嵌入式處理器系統(tǒng)中,F(xiàn)irmware并沒(méi)有提供中斷路由表,此時(shí)系統(tǒng)軟件開(kāi)發(fā)者需要事先了解PCI設(shè)備的INTx信號(hào)與中斷控制器的連接關(guān)系。此時(shí)外部設(shè)備與中斷控制器的連接關(guān)系由硬件設(shè)計(jì)人員指定。

我們假設(shè)在一個(gè)處理器系統(tǒng)中,共有3個(gè)PCI插槽(分別為PCI插槽A、B和C),這些PCI插槽與中斷控制器的IRQ_PINx引腳(分別為IRQW#、IRQX#、IRQY#和IRQZ#)可以按照下圖所示的拓?fù)浣Y(jié)構(gòu)進(jìn)行連接。

此時(shí),PCI插槽A、B、C的INTA#、INTB#和INTC#信號(hào)將分散連接到中斷控制器的IRQW#、IRQX#和IRQY#信號(hào),而所有INTD#信號(hào)將共享一個(gè)IRQZ#信號(hào)。采用這種連接方式時(shí),整個(gè)處理器系統(tǒng)使用的中斷請(qǐng)求信號(hào),其負(fù)載較為均衡。而且這種連接方式保證了每一個(gè)插槽的INTA#信號(hào)都與一根獨(dú)立的IRQx#信號(hào)對(duì)應(yīng),從而提高了PCI插槽中斷請(qǐng)求的效率。

在一個(gè)處理器系統(tǒng)中,多數(shù)PCI設(shè)備僅使用INTA#信號(hào),很少使用INTB#和INTC#信號(hào),而INTD#信號(hào)更是極少使用。在PCI總線中,PCI設(shè)備配置空間的Interrupt Pin寄存器記錄該設(shè)備究竟使用哪個(gè)INTx信號(hào)。

中斷信號(hào)與PCI總線的連接關(guān)系

在PCI總線中,INTx信號(hào)屬于邊帶信號(hào)。PCI橋也不會(huì)處理這些邊帶信號(hào)。這給PCI設(shè)備將中斷請(qǐng)求發(fā)向處理器帶來(lái)了一些困難,特別是給掛接在PCI橋之下的PCI設(shè)備進(jìn)行中斷請(qǐng)求帶來(lái)了一些麻煩。

在一些嵌入式處理器系統(tǒng)中,這個(gè)問(wèn)題較易解決。因?yàn)榍度胧教幚砥飨到y(tǒng)很清楚在當(dāng)前系統(tǒng)中存在多少個(gè)PCI設(shè)備,這些PCI設(shè)備使用了哪些中斷資源。在多數(shù)嵌入式處理器系統(tǒng)中,PCI設(shè)備的數(shù)量小于中斷控制器提供的外部中斷請(qǐng)求引腳數(shù),而且在嵌入式系統(tǒng)中,多數(shù)PCI設(shè)備僅使用INTA#信號(hào)提交中斷請(qǐng)求。

在這類處理器系統(tǒng)中,可能并不含有PCI橋,因而PCI設(shè)備的中斷請(qǐng)求信號(hào)與中斷控制器的連接關(guān)系較易確定。而在這類處理器系統(tǒng)中,即便存在PCI橋,來(lái)自PCI橋之下的PCI設(shè)備的中斷請(qǐng)求也較易處理。

在多數(shù)情況下,嵌入式處理器系統(tǒng)使用的PCI設(shè)備僅使用INTA#信號(hào)進(jìn)行中斷請(qǐng)求,所以只要將這些INTA#信號(hào)掛接到中斷控制器的獨(dú)立IRQ_PIN#引腳上即可。這樣每一個(gè)PCI設(shè)備都可以獨(dú)占一個(gè)單獨(dú)的中斷引腳。

而在x86處理器系統(tǒng)中,這個(gè)問(wèn)題需要BIOS參與來(lái)解決。在x86處理器系統(tǒng)中,有許多PCI插槽,處理器系統(tǒng)并不知道在這些插槽上將要掛接哪些PCI設(shè)備,而且也并不知道這些PCI設(shè)備到底需不需要使用所有的INTx#信號(hào)線。因此x86處理器系統(tǒng)必須要對(duì)各種情況進(jìn)行處理。

x86處理器系統(tǒng)還經(jīng)常使用PCI橋進(jìn)行PCI總線擴(kuò)展,擴(kuò)展出來(lái)的PCI總線還可能掛接一些PCI插槽,這些插槽上INTx#信號(hào)仍然需要處理。PCI橋規(guī)范并沒(méi)有要求橋片傳遞其下PCI設(shè)備的中斷請(qǐng)求。事實(shí)上多數(shù)PCI橋也沒(méi)有為下游PCI總線提供中斷引腳INTx#,管理其下游總線的PCI設(shè)備。但是PCI橋規(guī)范推薦使用下面的表建立下游PCI設(shè)備的INTx信號(hào)與上游PCI總線INTx信號(hào)之間的映射關(guān)系。

我們舉例說(shuō)明該表的含義。在PCI橋下游總線上的PCI設(shè)備,如果其設(shè)備號(hào)為0,那么這個(gè)設(shè)備的INTA#引腳將和PCI總線的INTA#引腳相連;如果其設(shè)備號(hào)為1,其INTA#引腳將和PCI總線的INTB#引腳相連;如果其設(shè)備號(hào)為2,其INTA#引腳將和PCI總線的INTC#引腳相連;如果其設(shè)備號(hào)為3,其INTA#引腳將和PCI總線的INTD#引腳相連。

在x86處理器系統(tǒng)中,由BIOS或者APCI表記錄PCI總線的INTA~D#信號(hào)與中斷控制器之間的映射關(guān)系,保存這個(gè)映射關(guān)系的數(shù)據(jù)結(jié)構(gòu)也被稱為中斷路由表。大多數(shù)BIOS使用表中的映射關(guān)系,這也是絕大多數(shù)BIOS支持的方式。如果在一個(gè)x86處理器系統(tǒng)中,PCI橋下游總線的PCI設(shè)備使用的中斷映射關(guān)系與此不同,那么系統(tǒng)軟件程序員需要改動(dòng)BIOS中的中斷路由表。

BIOS初始化代碼根據(jù)中斷路由表中的信息,可以將PCI設(shè)備使用的中斷向量號(hào)寫(xiě)入到該P(yáng)CI設(shè)備配置空間的Interrupt Line register寄存器中。

PCI總線的錯(cuò)誤處理

PCI設(shè)備可以通過(guò)奇偶校檢來(lái)檢測(cè)到來(lái)自AD上的地址或者數(shù)據(jù)的錯(cuò)誤,并通過(guò)PERR#或者SERR#報(bào)告錯(cuò)誤。但是需要注意的是,PCI Spec并未規(guī)定任何硬件層面上的錯(cuò)誤處理或者恢復(fù)機(jī)制,因此,這些錯(cuò)誤都只能通過(guò)軟件進(jìn)行處理。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • PCI
    PCI
    +關(guān)注

    關(guān)注

    5

    文章

    689

    瀏覽量

    134240
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    3040

    瀏覽量

    91657
  • 嵌入式處理器
    +關(guān)注

    關(guān)注

    0

    文章

    259

    瀏覽量

    31720

原文標(biāo)題:【博文連載】PCIe掃盲——PCI總線的中斷和錯(cuò)誤處理

文章出處:【微信號(hào):ChinaAET,微信公眾號(hào):電子技術(shù)應(yīng)用ChinaAET】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    淺談PCI總線中斷機(jī)制

    PCI總線中斷機(jī)制PCI總線使用INTA#、INTB#、INTC#和INTD#信號(hào)向處理
    發(fā)表于 02-16 06:31

    PCI中斷機(jī)制分析

    PCI中斷機(jī)制分析:PCI 總線有四條中斷線,所有PCI 設(shè)備共同使用這四條線向系統(tǒng)申請(qǐng)
    發(fā)表于 06-28 19:21 ?26次下載

    一種多核處理中斷控制器的設(shè)計(jì)

    一種多核處理中斷控制器的設(shè)計(jì)_張海金
    發(fā)表于 01-07 18:56 ?1次下載

    你了解硬中斷和軟中斷的區(qū)別?

    從本質(zhì)上來(lái)講,中斷是一種電信號(hào),當(dāng)設(shè)備有某種事件發(fā)生時(shí),它就會(huì)產(chǎn)生中斷,通過(guò)總線把電信號(hào)發(fā)送給中斷控制器
    發(fā)表于 05-05 11:48 ?1.8w次閱讀

    華芯微特MCU的嵌套向量中斷控制器與外部中斷/事件控制器的使用方法

    01. 嵌套向量中斷控制器(NVIC) NVIC的全稱是Nested vectoredinterrupt controller,即嵌套向量中斷控制器。 Cortex-M0和Cortex-M4提供了
    的頭像 發(fā)表于 06-04 12:08 ?4592次閱讀
    華芯微特MCU的嵌套向量<b class='flag-5'>中斷控制器</b>與外部<b class='flag-5'>中斷</b>/事件<b class='flag-5'>控制器</b>的使用方法

    PCI總線如何與中斷控制器信號(hào)相連?

    PCI總線使用INTA#、INTB#、INTC#和INTD#信號(hào)向處理發(fā)出中斷請(qǐng)求。
    的頭像 發(fā)表于 06-21 16:10 ?2424次閱讀

    簡(jiǎn)述PCI總線中斷機(jī)制

    PCI總線中斷機(jī)制 PCI總線使用INTA#、INTB#、INTC#和INTD#信號(hào)向處理
    的頭像 發(fā)表于 07-18 10:10 ?3721次閱讀

    中斷控制器的驅(qū)動(dòng)解析(上)

    這里主要分析 linux kernel 中 GIC v3 中斷控制器的代碼(drivers/irqchip/irq-gic-v3.c)。設(shè)備樹(shù)先來(lái)看下一個(gè)中斷控制器的設(shè)備樹(shù)信息:gic:...
    發(fā)表于 12-04 16:36 ?10次下載
    <b class='flag-5'>中斷控制器</b>的驅(qū)動(dòng)解析(上)

    扒開(kāi) ARM 中斷控制器的底褲

    GIC 硬件原理GIC,Generic Interrupt Controller。是ARM公司提供的一個(gè)通用的中斷控制器。主要作用為:接受硬件中斷信號(hào),并經(jīng)過(guò)一定處理后,分發(fā)給對(duì)應(yīng)的CPU...
    發(fā)表于 12-04 17:36 ?6次下載
    扒開(kāi) ARM <b class='flag-5'>中斷控制器</b>的底褲

    淺談PCI Express體系結(jié)構(gòu)(四)

    PCI總線中斷機(jī)制PCI總線使用INTA#、INTB#、INTC#和INTD#信號(hào)向處理
    發(fā)表于 12-17 18:26 ?10次下載
    淺談<b class='flag-5'>PCI</b> Express體系結(jié)構(gòu)(四)

    細(xì)說(shuō)STM32的中斷控制器(NVIC)那些事

    分組、中斷優(yōu)先級(jí)的配置、讀中斷請(qǐng)求標(biāo)志、清除中斷請(qǐng)求標(biāo)志、使能中斷、清除中斷等,它控制著STM3
    發(fā)表于 01-14 15:54 ?6次下載
    細(xì)說(shuō)STM32的<b class='flag-5'>中斷控制器</b>(NVIC)那些事

    STM32外部中斷控制器EXTI詳解

    什么是外部中斷控制器,外部中斷控制器在STM32芯片中處于什么位置,它的作用是什么,EXTI與GPIO的映射關(guān)系?
    的頭像 發(fā)表于 04-20 11:44 ?4016次閱讀
    STM32外部<b class='flag-5'>中斷控制器</b>EXTI詳解

    中斷控制器級(jí)聯(lián)的類型有哪幾種

    中斷控制器的級(jí)聯(lián) 根據(jù)中斷數(shù)量的不同,中斷控制器可以級(jí)聯(lián),以此來(lái)滿足需求。比如在 GIC 中斷控制器之前都會(huì)連接 EINT
    的頭像 發(fā)表于 09-28 14:15 ?1479次閱讀
    <b class='flag-5'>中斷控制器</b>級(jí)聯(lián)的類型有哪幾種

    PLIC平臺(tái)級(jí)中斷控制器介紹

    平臺(tái)級(jí)中斷控制器(PLIC) PLIC:Platform-Level Interrupt Controller. 實(shí)際上,除了CLINT管理的軟件中斷和定時(shí)中斷,其他的
    的頭像 發(fā)表于 10-07 17:53 ?2399次閱讀
    PLIC平臺(tái)級(jí)<b class='flag-5'>中斷控制器</b>介紹

    RISC-V怎么實(shí)現(xiàn)核間中斷?核心本地中斷控制器(CLINT)深度解析

    全稱為Core Local Interruptor(核心本地中斷控制器),是 RISC-V 特權(quán)架構(gòu)規(guī)范(Privileged Architecture Specification)中明確定義的內(nèi)建
    的頭像 發(fā)表于 12-13 14:06 ?2428次閱讀
    RISC-V怎么實(shí)現(xiàn)核間<b class='flag-5'>中斷</b>?核心本地<b class='flag-5'>中斷控制器</b>(CLINT)深度解析
    <strike id="rchmf"><strike id="rchmf"></strike></strike>

    <noframes id="rchmf"><li id="rchmf"><rp id="rchmf"></rp></li>