国外数字系统设计经典教材系列:SystemC入门(第2版)(附光盘1张) [A SystemC Primer,Second Edition]

国外数字系统设计经典教材系列:SystemC入门(第2版)(附光盘1张) [A SystemC Primer,Second Edition] pdf epub mobi txt 电子书 下载 2025

[美] 巴斯克(Bhasker J) 著,夏宁,甘伟 译
图书标签:
  • SystemC
  • 数字系统设计
  • 硬件描述语言
  • Verilog
  • VHDL
  • EDA
  • 建模
  • 仿真
  • 嵌入式系统
  • 教材
想要找书就要到 静流书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 北京航空航天大学出版社
ISBN:9787811242492
版次:1
商品编码:10116866
包装:平装
外文名称:A SystemC Primer,Second Edition
开本:16开
出版时间:2008-09-01
用纸:胶版纸
页数:239
字数:370000
正文语种:中文
附件:光盘
附件

具体描述

编辑推荐

  “这是一本透过普通数字系统的概念,循序渐进地向读者介绍SystemC复杂编程技术的入门书。”
  Stanley Krolikoski、开放SystemC提案委员会(OSCI)主席
  “本书非常适合作为学生的教科书,对于想开始学习SystemC的硬件设计师有巨大的价值。”
  Bernhard Niemann、Fraunhofer集成电路研究院
  “对手想学习RTL级SystemC的设计者而言,本书无疑是一本很值得读的参考书,书中的许多例子可以引导读者全面地理解这种语言。本书对SystemC更高级的特性也作了介绍,没有置之不理、总而言之,这是一本介绍SystemC的好书。”
  Yves Vanderperren,Alcatel微电子公司
  “本书为SystemC提供了极好的介绍,书中许多实际例子清晰地介绍和说明了SystemC的概念。对SystemC建模感兴趣的读者而言,本书是一本必读的好书。”
  Abhijit Ghosh,Synopsys公司
  “对于使用SystemC进行硬件设计感兴趣的读者而言,本书是一本非常有用的好书。书中的许多实际例子对于用RTL综合可以做些什么工作提出了注重实效的建议。”
  Grant Martin。Cadence实验室研究员
  “我非常欣赏这本书,真心诚意地把本书推荐给学习SystemC建模和综合的设计师们。本书将受到研究生和高年级本科生课程的欢迎。”
  David Long,Doulos公司

内容简介

  《SystemC入门(第2版)》介绍的是SystemC2.0标准,主要介绍SystemC有关硬件建模方面的语法特性,换言之,是介绍SystemC的RTI.可综合子集。SystemC既是系统级语言,也是硬件描述语言。《SystemC入门(第2版)》主要内容包括:SystemC数据类型、组合逻辑建模,同步逻辑建模、三态驱动器建模、常用的设计函数模型,测试平台的编写及系统级建模的功能等。随书附带l张光盘,内含《SystemC入门(第2版)》所有例子的代码。《SystemC入门(第2版)》所有例子都经SystemC2.0.1的验证。《SystemC入门(第2版)》可作为想要了解和学习SystemC的设计工程师和系统工程师的参考书,也可用做大学讲授体系结构、数字设计或系统设计课程的教材。

作者简介

  Bhasker,Bhasker是eSilicon公司的体系结构设计师。他曾是朗讯技术公司和贝尔实验室技术部门的杰出成员,并在朗讯科技公司教授VHDL和Verilog HDL课程四年多。他还编写了四本其他有关硬件描述语言和综合的书籍,其中包括最畅销的书A VHDL Primer和Verilog HDL Synthesis,A Practical Primer。Bhasker拥有美国明尼苏达大学计算机科学系的博士学位和计算机技术学院的技术硕士学位,以及新德里印度技术学院电子工程系的学士学位。

目录

第1章 绪论
1.1 什么是SystemC?
1.2 为什么使用SystemC?
1.3 设计方法学
1.4 SystemC的功能
1.5 SystemCRTL
1.6 本书的组织
1.7 练习题
第2章 起步
2.1 基础知识
2.2 再举一个例子
2.3 描述的层次
2.4 功能的验证
2.5 练习题
第3章 数据类型
3.1 值保持器
3.2 类型的总结
3.3 位类型
3.4 任意位宽类型
3.5 逻辑类型
3.6 任意位宽的逻辑类型
3.7 有符号的整数类型
3.8 无符号的整数类型
3.9 任意精度有符号的整数类型
3.1 0任意精度无符号的整数类型
3.1 1判断类型
3.1 2用户定义的数据类型
3.1 3推荐的数据类型
3.1 4练习题
第4章 组合逻辑建模
4.1 SC—MODULE
4.2 一个例子
4.3 端口和信号的读/写
4.4 逻辑操作符
4.5 算术操作符
4.5.1 无符号的算术运算
4.5.2 有符号的算术运算
4.6 关系操作符
4.7 向量和范围
4.7.1 常数索引
4.7.2 非常数索引
4.8 条件语句
4.9 开关语句
4.1 0循环
4.1 1方法
4.1 2结构
4.1 3多进程和△延迟
4.1 4小结
4.1 5练习题
第5章 同步逻辑建模
5.1 触发器建模
5.2 多进程
5.3 带异步置位和清零端的触发器
5.4 带同步置位和清零端的触发器
5.5 多时钟和多相位时钟
5.6 锁存器建模
5.6.1 条件语句
5.6.2 开关语句
5.6.3 避免生成锁存器
5.7 小结
5.8 练习题
第6章 各色各样的逻辑
6.1 三态驱动器
6.2 多个驱动源
6.3 无关项的处理
6.4 层次
6.5 模块的参数化
6.6 变量和信号的赋值
6.7 练习题
第7章 建模示例
7.1 具有三态输出的参数化寄存器
7.2 存储器模型
7.3 有限状态机的建模
7.3.1 摩尔型有限状态机
7.3.2 米利型有限状态机
7.4 通用移位寄存器
7.5 计数器
7.5.1 模N计数器
7.5.2 Johnson计数器
7.5.3 格雷码双向计数器
7.6 Johnson译码器
7.7 阶乘的模型
7.8 只读存储器(ROM)的建模
7.9 练习题
第8章 测试平台的编写
8.1 编写测试平台
8.2 仿真控制
8.2.1 scclock
8.2.2 sctrace
8.2.3 scstart
8.2.4 scstop
8.2.5 sctime—stamp
8.2.6 scsimulaLion_time
8.2.7 sccycle和scinitialize
8.2.8 sctime
8.3 波形
8.3.1 任意类型的波形
8.3.2 复杂的重复波形
8.3.3 生成一个衍生的时钟
8.3.4 从文件中读取激励
8.3.5 响应性激励
8.4 监视行为
8.4.1 判断仿真结果是否正确
8.4.2 把结果保存到文本文件中
8.5 更多示例
8.5.1 触发器
8.5.2 带同步输出的多路选择器
8.5.3 全加器
8.5.4 周期节拍级仿真
8.6 在sc—main内的语句顺序
8.7 跟踪记录集合类型
8.8 跟踪记录枚举类型
8.9 练习题
第9章 系统级建模
9.1 SC—THREAD进程
9.2 动态敏感性
9.3 构造函数的参数
9.4 更多示例
9.4.1 求最大公约数
9.4.2 滤波器
9.5 端口、接口和通道
9.6 高级话题
9.6.1 共享的数据成员
9.6.2 定点类型
9.6.3 模块
9.6.4 其他方法
9.7 仿真算法
9.8 练习题
附录A 运行环境
A.1 软件的安装
A.2 设计的编译
A.3 设计的仿真
A.4 设计的调试
附录B SystemCRTL:SystemC的可综合子集
B.1 SystemC的特性
B.2 C++的特性
参考文献
索引

精彩书摘

  第1章 绪论
  1.2 为什么使用SystemC?
   设计正在变得越来越大,运行速度变得越来越快,复杂程度也变得越来越高,因此有必要在更高的抽象层次上对设计进行描述,以便能进行:
   ①更高速度的仿真;
   ②硬件/软件的协同仿真;
   ③体系架构的探索。
  为了管理大型设计的复杂度,以便所有的设计优化和探索工作都可以在系统级上实现,在系统级上的描述设计变得十分重要。此外,硬件和软件的复杂程度也日益提高,这意味着相对于硬件而言,设计的更多功能将由软件来解决。为了确定哪些功能应由硬件来解决,哪些功能应由软件来解决,就必须进行至关重要的功能划分工作。
  系统级设计提供了一种可以很快得到其可执行规范的方法,使用该规范可以确认设计概念的可行性。该行为规范使得设计人员在设计实现之前,就有了该设计的总体指标,以确保所设计系统能够与周围环境(即该系统设计的所有外部块)正确地交互。系统设计使得设计的早期验证成为可能,这是因为在开发过程的初期,就可以通过总线一周期精确模型来进行快速仿真。
  当设计被表达为系统级模型时,选用不同的算法对设计进行多次尝试是很容易做到的,换用不同的结构进行试验也能很快地完成;倘若使用寄存器传输级或门级模型来表达设计,则完成上述试验就很麻烦。图1-2展示了设计的大小。设计模型使用芯片级描述,规模通常相当大;若要试探不同的设计结构或者做一些改动,即使不是太困难,也相当费时费力。然而,设计模型若使用系统级描述,则规模一般不会很大且容易管理,并且尝试设计不同的架构和对设计做一些改动等都可以很快地完成。

前言/序言

  J.Bhasker在数字集成电路设计界具有很好的声誉。包括美国和中国在内的各国数字电路和系统设计者,无论是新手,还是从VHDL转到Verilog的老手,其中很多人都阅读过J.Bhasker编写的A Verilog HDL Primer。J.Bhasker的教材以简明扼要、清晰易懂著名。A SystemC Primer一书是介绍SystemC基础知识的教科书,符合他编书的一贯风格,特别适合作为入门教材。
  SystemC对许多中国读者来说,还是一种新的硬件描述语言。近年来,由于基于平台设计方法学的推广,系统验证已成为设计工作中的瓶颈。而SystemC由于是一种基于C++的语言,具有学习方便的优点,更重要的是其高速的仿真性能已得到多家设计公司的认可,因此被广泛用做SoC系统验证语言。由OSCI组织的推荐.2004年SystemC 2.0被正式批准为IEEE标准,与SystemVerilog并列成为最主要的系统验证语言之一。
  本书是根据J.Bhasker编写的A SystemC Primer第2版翻译的。2004年起原书在数字集成电路验证界逐渐走红并非偶然。在世界各地的大学中,教师和学生们所熟悉的主要编程语言和环境是C++。而SystemC是C++的一个子集合,不存在编程环境和学习基础的问题,所以比SystemVerilog更便于推广和应用。
  本书的翻译工作安排如下:第2版序言、序言、前言、第1~6章及附录A、B和索引等由夏字闻负责,第7~9章由神州龙芯IC设计公司的甘伟工程师负责。全书最后的审校与定稿由夏宇闻负责。
  在神州龙芯IC设计公司工作的工程师和实习研究生樊荣、洪雷、周鹏飞、刘家正、陈岩、李鹏、宋成伟、邢志成、管丽、徐伟俊、杨鑫、苏宇、张云帆、邢小地、李鹏、李琪、陈岩等认真阅读了最后完成的翻译稿,并提出了许多改进意见,使翻译工作的质量有了显著提高。在翻译稿最后完成之际,谨向他们表示诚挚的感谢。

SystemC 精要:从概念到实践 对于任何希望深入理解当代电子系统设计的工程师和研究人员而言,掌握SystemC语言已成为一项核心竞争力。本书并非对某一本特定著作的介绍,而是旨在提供一个关于SystemC语言及其在复杂电子系统建模、仿真和验证中应用的全景式视角。我们将深入探讨SystemC的起源、核心概念、关键模块以及它如何赋能从高层次抽象到低层次硬件实现的无缝过渡。 SystemC 的崛起与设计范式转变 在传统的硬件设计流程中,软件与硬件的分离常常导致集成困难、验证周期漫长以及设计迭代效率低下。SystemC 的出现,正是为了应对这些挑战而诞生的。它是一种基于C++的硬件描述和仿真语言,允许工程师以软件的思维方式来描述和验证硬件。这种“硬件在软件中”(Hardware in Software)的设计范式,极大地提高了设计的灵活性、可移植性和可重用性。SystemC 使得工程师可以在早期阶段就对系统进行高层次的功能和性能评估,从而在设计流程的早期发现并解决问题,大大缩短了开发周期,降低了整体成本。 核心概念解析:模块、端口、信号与进程 SystemC 的核心在于其面向对象的建模方法。理解以下几个关键概念至关重要: 模块 (Module): 模块是SystemC建模的基本单元,类似于面向对象编程中的类。一个模块封装了行为(进程)和结构(子模块、信号等)。它可以代表一个完整的芯片、一个IP核、一个外设,甚至是一个系统中的某个功能单元。模块之间的层次化组合构成了复杂的系统模型。 端口 (Port): 模块通过端口进行通信和交互。端口定义了模块的接口,可以接收输入信号、输出信号,或者进行双向通信。SystemC 提供了多种端口类型,如 `sc_in` (输入端口)、`sc_out` (输出端口) 和 `sc_inout` (双向端口),以满足不同通信需求。 信号 (Signal): 信号是模块之间数据传输的载体。它们类似于硬件描述语言中的线网(wire)或寄存器(register)。信号的传递遵循事件驱动的仿真模型,当信号的值发生变化时,会触发相关的进程。SystemC 提供了 `sc_signal` 来表示线网,`sc_buffer` 来表示具有驱动能力的信号,以及 `sc_fifo` 等更复杂的通信机制。 进程 (Process): 进程是模块内部的行为描述。它们是SystemC仿真器中并行执行的实体,代表了硬件的并发性。SystemC 提供了三种主要的进程类型: `SC_METHOD`: 这是一个纯粹的组合逻辑进程。它会在其敏感列表中的任何信号发生变化时被触发执行一次。它不能保持状态。 `SC_THREAD`: 这是一个顺序逻辑进程,可以保持状态。它会随着其敏感列表中的事件发生而执行,并且可以在执行过程中使用 `wait()` 函数暂停,等待特定的事件发生。 `SC_CTHREAD`: 这是一个时钟同步的顺序逻辑进程。它只能被时钟的上升沿或下降沿触发,并且其内部逻辑必须在时钟周期内完成。这非常适合建模同步硬件电路。 通信机制:事件、等待与通道 SystemC 精妙的通信机制是其强大之处的关键。 事件 (Event): 事件是SystemC仿真中驱动进程执行的基本单位。信号的变化会产生事件,进程可以对这些事件进行监听(敏感)。SystemC 还允许用户自定义事件,以实现更灵活的同步和通信。 等待 (Wait): 进程可以使用 `wait()` 函数在仿真过程中暂停。`wait()` 可以等待特定的事件发生,也可以等待一段时间(例如,`wait(10, SC_NS)` 表示等待10纳秒)。这使得进程能够精确地控制其执行时序。 通道 (Channel): 通道是SystemC中用于模块间通信的高级抽象。SystemC 提供了许多预定义的通道,如 `sc_signal`、`sc_fifo` (先进先出队列)、`sc_mutex` (互斥锁) 等。这些通道封装了复杂的通信协议和同步机制,使得开发者无需从底层开始实现。同时,SystemC 也支持自定义通道,允许工程师根据具体需求创建更复杂的通信接口。 仿真模型:事件驱动与离散事件仿真 SystemC 采用的是一种离散事件驱动的仿真模型。仿真器维护一个事件队列,按照时间顺序调度事件的发生和进程的执行。当一个事件发生时,所有监听该事件的进程都会被唤醒。如果进程是 `SC_METHOD`,它会立即执行一次。如果进程是 `SC_THREAD` 或 `SC_CTHREAD`,它会从上次暂停的地方继续执行,直到遇到另一个 `wait()` 或者完成。这种仿真模型能够精确地模拟硬件的并发行为和时序特性。 SystemC 的应用领域 SystemC 的灵活性使其在电子系统设计的各个阶段都发挥着关键作用: 系统级建模与架构探索 (System-Level Modeling and Architecture Exploration): 在项目早期,SystemC 可以用于创建抽象的系统模型,快速评估不同的架构选择、总线协议和算法。这有助于在软件和硬件工程师之间建立共同的语言,并尽早验证系统的整体功能和性能。 硬件/软件协同设计 (Hardware/Software Co-design): SystemC 允许将软件和硬件组件集成在同一个模型中进行仿真。这使得软件工程师可以在模型中开发和测试其软件,而硬件工程师则可以并行开发硬件。通过SystemC,可以实现软件在硬件模型上的早期验证,并为硬件的最终实现提供精确的接口规范。 IP核建模与验证 (IP Core Modeling and Verification): SystemC 可以用来描述和验证可重用的IP核。通过高层次的SystemC模型,可以对IP核的功能和接口进行详细的测试,确保其满足设计规范。 C++ 抽象层建模 (C++ Abstraction Layer Modeling): SystemC 允许工程师利用 C++ 的强大功能来构建复杂的设计模型,从而提高生产效率。许多公司将 SystemC 作为其内部的C++抽象层,用于快速原型设计和性能分析。 从高层次综合到 RTL (High-Level Synthesis to RTL): SystemC 模型可以作为高层次综合 (HLS) 工具的输入。HLS 工具可以将 SystemC 模型自动转换为 RTL (Register-Transfer Level) 代码(如 Verilog 或 VHDL),从而极大地缩短了从架构设计到 RTL 实现的时间。 SystemC 的优势总结 提高生产效率: 允许使用 C++ 的高级特性,加速开发过程。 增强可重用性: 模块化设计和丰富的库支持,便于代码复用。 促进早期验证: 可以在设计早期进行功能和性能验证,减少后期返工。 支持软硬件协同: 统一的建模环境,便于软硬件团队协作。 与 C++ 生态系统兼容: 能够方便地集成现有的 C++ 库和工具。 展望 随着摩尔定律的放缓和系统复杂性的指数级增长,SystemC 及其相关技术在电子系统设计中的重要性将愈发凸显。它为工程师提供了一个强大的工具集,以应对当前和未来电子设计所面临的严峻挑战。通过深入理解 SystemC 的核心概念和精髓,设计人员能够构建出更高效、更可靠、更具竞争力的电子产品。

用户评价

评分

评价二 读完《SystemC入门(第2版)》,我最大的感受就是“醍醐灌顶”。作为一个在实际工程中已经使用SystemC一段时间的工程师,我总觉得自己在一些细节上不够扎实,对SystemC的理解也停留在“会用”的层面,而非“精通”。这本书恰好弥补了我的这一不足。作者在阐述基本概念时,并没有流于表面,而是深入挖掘了SystemC背后的原理和设计思想。例如,在解释sc_module、sc_port、sc_signal这些核心元素时,书中不仅给出了定义和用法,还详细讲解了它们在仿真器中的实现机制,这让我豁然开朗,明白了为什么这样设计,以及在实际应用中应该注意哪些陷阱。书中的高级话题,如事务级建模(TLM)的介绍,也非常及时和前沿,对于我们这些希望提高设计效率的工程师来说,非常有指导意义。作者通过清晰的案例,展示了如何利用TLM标准来描述系统组件之间的接口和通信协议,这比传统的基于信号的建模方式更加抽象和高效。另外,书中对于不同建模粒度的权衡,以及如何根据项目需求选择合适的建模方法,也给出了很多宝贵的建议。这本书让我从一个“搬砖工”变成了一个“架构师”,对SystemC的理解上升到了一个新的高度。

评分

评价四 作为一名对硬件抽象层设计充满好奇的软件工程师,我一直对SystemC有所耳闻,但苦于没有合适的入门材料。《SystemC入门(第2版)》无疑是我的最佳选择。这本书的语言风格非常亲切,完全没有传统技术书籍那种枯燥乏味的刻板印象。作者善于用类比和生活化的例子来解释复杂的抽象概念,比如在介绍进程(process)的时候,就将其比作计算机中的线程,这让我一下子就理解了它的运行机制。书中对于SystemC中“时间”的概念的讲解,尤其让我印象深刻,作者详细解释了仿真时间、真实时间以及它们之间的关系,这对于进行精确的时序建模至关重要。此外,书中对SystemC中各种同步原语的介绍,如event、wait()、notify()等,都提供了非常实用的代码示例,让我能够快速掌握如何在并发进程之间进行协调。光盘中的源代码,我下载后仔细看了一下,代码风格统一,命名规范,而且逻辑清晰,非常有学习价值。这本书让我看到了SystemC在软件仿真、硬件加速等领域的巨大潜力,也激发了我进一步深入研究的兴趣。

评分

评价三 这本书的编排和内容绝对是物超所值!我一直想找一本能够系统性地介绍SystemC的书籍,但市面上很多都过于学术化,或者只偏重于某个方面。《SystemC入门(第2版)》则做到了很好的平衡。首先,它有一个非常好的“导论”部分,简要介绍了SystemC的起源、发展和在数字系统设计中的地位,这为我建立了一个宏观的认识。接着,书中的章节安排紧凑而合理,循序渐进地引导读者掌握SystemC的各个方面。让我印象深刻的是,书中对“仿真模型”的讲解非常透彻,详细介绍了SystemC仿真器的原理,包括事件驱动、时序控制等,这对于理解SystemC的行为至关重要。书中还涵盖了数据流建模、同步机制(如mutex, semaphore)等关键概念,并且都配有生动易懂的例子。光盘中的代码示例,质量很高,不仅运行正确,而且结构清晰,注释详细,我可以直接拿来修改和学习。我特别喜欢书中关于“调试技巧”的章节,这对于初学者来说是极其宝贵的财富,能够帮助我们更快地定位和解决问题。这本书不仅仅是一本技术手册,更像是一位经验丰富的导师,耐心地指导我一步步深入SystemC的世界。

评分

评价五 《SystemC入门(第2版)》这本书的价值,远远超出了“入门”这个词所能概括的范畴。它不仅适合初学者,对于有一定SystemC基础的读者来说,也能够从中获得新的启发。我特别欣赏书中在介绍SystemC核心类库时,深入剖析了每个类背后的设计哲学。例如,在讲到`sc_module`时,作者不仅解释了它如何封装行为和数据,还深入讨论了其与C++类继承的关系,这让我对面向对象的建模思想在SystemC中的应用有了更深的理解。书中对`sc_port`和`sc_interface`的讲解,更是点睛之笔,它让我明白了如何构建灵活且可扩展的通信机制。我尤其关注书中关于“抽象层次”的讨论,作者清晰地阐述了SystemC如何在不同抽象级别上支持建模,从高层的行为级到低层的寄存器传输级,为读者提供了清晰的设计思路。光盘中的文件,我花了一些时间浏览,发现不仅仅是代码,还有一些关于版本兼容性和常见问题的解答,这些细节的处理让我觉得作者非常用心。这本书让我对SystemC的信心倍增,也让我对未来利用SystemC进行更复杂的系统级设计充满了期待。

评分

评价一 这本书真是让我眼前一亮!作为一名刚刚接触SystemC不久的学生,我原本对这种硬件描述语言感到有些畏惧,但《SystemC入门(第2版)》却以一种非常循序渐进且生动的方式,将复杂的概念一一剖析。作者的讲解逻辑清晰,从最基础的SystemC语法、数据类型,到如何构建模块、端口通信,再到更高级的进程、事件和数据流建模,每一步都安排得恰到好处,让我感觉自己能够跟得上节奏。书中大量的代码示例,更是让我受益匪浅。不仅仅是简单的“hello world”,而是真正能够反映实际应用场景的例子,让我能够亲手实践,加深理解。而且,这些例子都经过了精心设计,既包含了必要的知识点,又不会过于冗长和复杂,非常适合初学者模仿和修改。光盘的配套资源也非常实用,提供了书中所有的代码示例,以及一些额外的学习资料,这极大地节省了我查找和整理资料的时间。我尤其喜欢书中对仿真时序和行为建模的讲解,这部分对于理解SystemC的核心至关重要,作者用了很多形象的比喻,让我这个门外汉也能茅塞顿开。总而言之,这本书为我打开了SystemC的大门,让我对数字系统设计有了更深刻的认识。

评分

还没准备看。做FPGA这一行的必须跟进新趋势。

评分

学习中,还有光盘赠送

评分

质量好,送货快,第一次送封面有折痕,很快就给换了,京东的服务没的说

评分

给女朋友买的技术类书,自己看不懂。无法评论。

评分

买来没怎么看,具体质量不知

评分

包装很不错, 值得一看.学习中

评分

入门书,语法讲解挺仔细,挺不错

评分

真的是入门啊,恐怕门都入不了,如此浅显的书,实在起不了什么作用。

评分

商品还不错,推荐大家购买

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.coffeedeals.club All Rights Reserved. 静流书站 版权所有