New MP3 decoder chip VS1001K and its application

Abstract: VS1001K is a new MP3 decoder chip produced by VLSI SoluTIon of Finland. The chip contains high-quality stereo digital-to-analog converter (DAC) and headphone drive circuit, supporting PCM data input. It also has the advantages of small size, low power consumption, simple interface and cheap price. The article introduces the pin arrangement, internal structure and main features of VS1001K. At the same time, the functions and addresses of the registers in the SCI control interface of the VS1001K and the operation method of the SDI data interface are mainly introduced. Finally, the application circuit of VS1001K is given.

1 Introduction

At present, the MP3 audio data compression method used by INTERNET and portable players has become a recognized industry standard. This method quickly became popular all over the world due to its high compression ratio and good sound quality. But in fact, the core of many MP3 players is a MP3 audio decoding chip. VS1001K is a new MP3 decoder chip launched by Finland VLSI Solution. The chip contains high-quality stereo digital-to-analog converter (DAC) and headphone driver circuit, it supports PCM data input, and has the advantages of small size, low power consumption, simple interface, cheap price and so on. Therefore, it is expected to become the chip of choice for the new MP3 decoder.

2 Functional structure of VS100K

2.1 Pin function of VS100K

VS1001K has two package types: 28-pin SOIC dual-row and 49-pin BGA ball grid array. Figure 1 shows the pin layout of the 28-pin SOIC package. The specific function description of each pin is listed in Table 1.

Table 1 VS1001K pin functions

Pin number Pin name Features
1 DREQ Data request port
2 DCLK SDI clock signal input
3 SDATA SDI data input
4 BSYNC Byte sync signal
5, 9, 28 DVDD Digital power
6, 10, 27 DGND Digitally
7 XTALO Clock signal output
8 XTALI Clock signal input
11 XCS Chip select, active low
12 SCLK SCI clock input
13 SI SCI data input
14 SO SCI data output
15 ~ 17 TEST0 Alternate test port
18, 21, 25 AGND Simulated
19, 23 AVDD Analog power
20 RIGHT Right channel audio output
twenty two RCAP External capacitor access terminal
twenty four LEFT Left channel audio output
26 XRESET Circuit reset terminal, active low

Table 2 SCI register functions

Register name Address Types of

Features

MODE 0x00 RW Used to control the operation of VS1001K
STATUS 0x01 RW Current status information of VS1001K
INT_FCTLH 0x02 - Internal registers, generally not used
CLOCKF 0x03 RW Control clock frequency and frequency multiplier
DECODE_TIME 0x04 R Determine the decoding time (in seconds)
AUDATA 0x05 R Sound data
WRAM 0x06 W Used to write user program to program RAM
WRAMADDR 0x07 W Set the base address for WRAM operation
HDAT0 0x08 R Read MP3 header data
HDAT1 0x09 R Read MP3 header data
A1ADDR 0x0A RW Determine the start address of the user application
VOL 0x0B RW Used for volume control, high and low bytes are left and right channels respectively. The volume ranges from 0 to FF, with 0 being the largest and FF being the smallest
RESERVED 0x0C - Keep
A1CTRL [0] 0x0D RW Used to control user applications
A1CTRL [1] 0x0E RW Used to control user applications

2.2 The internal structure of VS100K

The VS100K decoder chip integrates the VS DSP processor, and it also integrates stereo audio DAC, stereo headphone amplifier driver, and program ROM and program RAM. In addition, VS100K also has a serial data interface and control interface. Figure 2 is a block diagram of the internal structure of VS100K.

3 Working principle of VS100K

VS1001K mainly receives the external microprocessor to control commands and MP3 data through two serial interfaces SCI and SDI. Among them, SCI is used to receive control commands sent by external microprocessors, and SDI is used to receive MP3 data sent by external microprocessors.

3.1 SCI control interface

The control of VS100K is mainly achieved by operating 15 16-bit registers in SCI. Table 2 lists the names, addresses, types and functions of 15 16-bit registers of SCI. In fact, the main operation of the VS100K is done through the MODE register. Table 3 gives a description of the operating functions of the MODE register.

Table 3 MODE register operation method

Bit Name

Features

Instructions

0 SM_DIFF Differential output control 0 is normal, 1 is left channel inversion
1 SM_FFWD Fast forward 0 is normal speed, 1 is fast forward
2 SM_RESET Software reset 0 is not reset, 1 is reset
3 SM_MP12 Whether to decode MP1 and 2 0 is for MP3 only, and MP1 / 2/3 is decoded when 1.
4 SM_PDOWN Power-down control 0 is power on, 1 is power off
5 SM_DAC Digital-to-analog mode control 0 is general MPEG decoding, 1 is PCM decoding
6 SM_DACMONO Stereo digital-to-analog conversion control 0 is stereo, 1 is mono
7 SM_BASS High / bass booster 0 is off, 1 is on
8 SM_DACT DCLK trigger edge 0 is from MSB, 1 is from LSB
9 SM_BYTEORD Byte transfer order 0 is a rising edge, 1 is a falling edge
10 SM_IBMODE Operating mode 0 is slave mode, 1 is master mode
11 SM_IBCLK VS1001K is used for DCLK frequency setting when working in master mode Choose 512kHz at 0, 1024kHz at 1

The communication protocol between SCI and external microprocessor includes instruction byte, address byte and 16-bit word. Among them, the instruction byte takes 0X03 as a read register and 0X02 as a write register; the main purpose of the address byte is to determine the address of the address register, and its range is 0X00 ~ 0X0E. The 16-bit word is used to point to the value written or read from the specified register. Figure 3 shows the timing of the read and write operations of the SCI register.

3.2 SDI data interface

When the external microprocessor transmits MP3 data to the VS100K through the SDI interface, under different settings of the MODE register, the SDI can work in both master and slave modes.

When SDI works in master mode, its DClk signal is generated internally by VS100K (specifically, 512kHz or 1024kHz is determined by the SM IBCLK bit in the MODE register), and when SDI works in slave mode, DClk is input externally.

SDI usually carries on the data transmission in the unit of byte, and input the SATA data signal on the rising or falling edge of the DCLK (specifically determined by the SM_DACT bit in the MODE register). Whether the high bit is first or the low bit is first used in data transfer is determined by the SM DAC bit of the MODE register. SDI uses BSYNC signals to ensure that there is no misalignment during data transmission.

Figure 3, Figure 4

When SDI receives data in slave mode, if there is enough space in the on-chip FIFO, VS1001K will issue a high-level DREQ data request signal to indicate that it can receive at least 32 bytes of MP3 data.

4 Application of VS100K

Fig. 4 is the application circuit that VS100K connects with external microprocessor through SDI and SCI interface. As can be seen from the figure, because the VS100K decoder has integrated a digital-to-analog converter and an audio drive circuit for headphones in its chip, its peripheral circuit is very simple. In fact, the circuit in Figure 4 has been optimized for the interface circuit between VS100K and the microprocessor.

Regarding the software programming of reading and writing SCI registers or transferring MP3 data to SDI, the software programming may be different for different external microprocessors. But neither is very complicated. Due to space limitations, this article will not repeat them.

Tektronix supports Amazon (AWS) media services to provide quality assurance for end-to-end video Shengju Apple TV 4K disassembly report based on unified computing architecture technology video display system design: familiar modular components

Follow WeChat

Interesting and informative information and technical dry goods

Download Audiophile APP

Create your own personal electronic circle

Follow the audiophile class

Lock the latest course activities and technical live broadcast
Collect People collection
share it:
comment
Publish

related suggestion

ADV718 enhanced video decoder with integrated 10-bit ADC ...

Abstract: ADV7183 is an enhanced video decoder with 10-bit ADC integrated by American Analog Devices (ADI). Inside it ...

Published on 2006-05-26 21:50 • 314 views
ADV718 enhanced video decoder with integrated 10-bit ADC ...
MPEG4 audio and video encoding chip IME6400 and its application

Abstract: IME6400 is an integrated circuit developed by South Korean INTiME that can support MPEG4 high-resolution real-time video encoding ...

Published on 2006-05-26 21:49 • 476 times read
MPEG4 audio and video encoding chip IME6400 and its application
[Photo] Three-terminal voltage regulator XWY2005 and its application

Three-terminal ...

Posted at 2006-04-17 21:20 • 276 views
[Photo] Three-terminal voltage regulator XWY2005 and its application
Microwave semiconductor power device and its application

...

Posted at 2006-04-16 21:03 • 835 views
Microwave semiconductor power device and its application
[Photo] High-precision CMOS operational amplifier LMC6062 / ...

High Accuracy CMOS Operational A ...

Posted at 2006-04-16 17:58 • 362 times read
[Photo] High-precision CMOS operational amplifier LMC6062 / ...
[Photo] Single-ended PWM controller NCP1205 and its application

Abstract: NCP1

Posted at 2006-04-16 17:31 • 325 views
[Photo] Single-ended PWM controller NCP1205 and its application
[Photo] MC145152 frequency synthesizer and its application

Published on 2006-04-15 20:39 • 1653 views
[Photo] MC145152 frequency synthesizer and its application
[Photo] High performance small power FM receiver chip NE605 and its application ...

NE605 is Philips ...

Published on 2006-04-15 19:20 • 483 times read
[Photo] High performance small power FM receiver chip NE605 and its application ...
TV display processor TDA9332H controlled by I2C bus and ...

Abstract: TDA9332H is a display processor suitable for high-end color TV produced by Philips, which can be used for single scan (50 or 60Hz) and dual ...

Posted at 2006-03-24 13:30 • 547 views
TV display processor TDA9332H controlled by I2C bus and ...
PXI technology and its application

Introduction

Published on 2006-03-24 13:15 • 191 times read
PXI technology and its application
Parallel interface ferroelectric memory FM1808 and its application

Abstract: The parallel interface high-performance ferroelectric memory FM1808 produced by RAMTRON is an ideal substitute for NV-SRAM ...

Published on 2006-03-24 13:01 • 664 times read
Parallel interface ferroelectric memory FM1808 and its application
Zero power ultra fast CPLD device ispMACH4000Z ...

Abstract: Introduces the features of the zero-power ultra-fast and complex programming logic device ispMACH4000Z introduced by Lattice Semiconductor, ...

Published on 2006-03-13 19:36 • 253 views
Zero power ultra fast CPLD device ispMACH4000Z ...
Wireless Transceiver Digital Transmission Modem Module PTR2030 and Its Application

This article introduces the main features, pin functions, software design, hardware connection and specific application circuit of PTR2030. PTR2030 is super ...

Published on 2006-03-11 13:19 • 185 times read
Wireless Transceiver Digital Transmission Modem Module PTR2030 and Its Application
Collecting voltage / current converter XTR110 and its application

XTR110 is a precision voltage / current converter launched by Burr-Brown Company of the United States. It is designed for analog signal transmission ...

Published on 2006-03-11 13:02 • 464 times read
Collecting voltage / current converter XTR110 and its application
Programmable fast charge management chip MAX712 / ...

Abstract: This article introduces the MAX712 / MAX713 programmable battery charge management chip produced by MAXIM, using MAX ...

Published on 2006-03-11 13:01 • 540 views
Programmable fast charge management chip MAX712 / ...
Embedded microprocessor MCF5249 and its application

Abstract: This article introduces the principle, characteristics and pin functions of the embedded microprocessor MCF5249 of MOTOROLA company, and explains ...

Published on 2006-03-11 12:38 • 206 times read
Embedded microprocessor MCF5249 and its application
32-bit ARM core microprocessor W90N740 and its application

Abstract: Based on the analysis of the ARM architecture, the structural characteristics and advantages of the 32-bit ARM core processor W90N740 are introduced ...

Published on 2006-03-11 12:38 • 208 times read
32-bit ARM core microprocessor W90N740 and its application
Principle and application of display and keyboard intelligent control zlg7289A

Abstract: This article introduces in detail the basic principles, features and original use of the digital tube and keyboard smart chip zlg7289A ...

Published on 2006-03-11 12:23 • 937 views
Principle and application of display and keyboard intelligent control zlg7289A
Embedded system based on dual-core OMAP5910 and its application

Abstract: This article introduces the structure, function and interface characteristics of OMAP5910, and ...

Published on 2006-03-11 12:23 • 224 times read
Embedded system based on dual-core OMAP5910 and its application
Embedded network controller CS6208 and its application

Abstract: CS6208 is a chip specially developed by Myson Century for network control and transmission. It is based on 80 ...

Published on 2006-03-11 11:49 • 514 views
Embedded network controller CS6208 and its application
var check_allow = "/d/Api/iscantalk.html"; var add_url = '/ d / article / write /'; function CheckLogin () {now_uid = ''; var ElecfansApi_checklogin = '/ webapi / passport / checklogin'; var logout_url = "{: U ('Login / logout')}"; var logout_url = 'http://bbs.elecfans.com/member.php?mod=logging&action=logout&refer=front'; $ .get (ElecfansApi_checklogin, function (data, textStatus) {if (data! = "") {EchoLoginInfo (data); CheckEmailInfo (data); data = $ .parseJSON (data); now_uid = data.uid; / * var login_content = 'write an article
'+ data.username +'
Quit '; * / var login_content =' write an article
'+ data.username +'
Set exit '; $ (' # login_area '). Html (login_content); var win_width = $ (window) .width (); if (win_width> 1000) {$ ("# mine"). MouseDelay (200) .hover (function () {$ ("# mymenu"). show ();}, function () {$ ("# mymenu"). hide ();});}} else {var content = 'Login Registration'; $ ('# login_area'). html (content); $ (". special-login"). click (function (e) {$ .tActivityLogin (); return false;});}});} $ (function () {// comment ------------------------------- var comment = $ ("# comment"); var comment_input = $ ("# comContent"); // Submit comment click event interaction $ ("# comSubmit2"). on ('click', function () {var content = comment_input.text (); // Empty input box comment_input. html (""). focus (); // Submit data to server $ .ajax ({url: '/plus/arcComment.php', data: {aid: $ ("# webID"). val (), dopost : 'apiPubComment', content: content}, type: 'post', dataType: 'json', success: function (data) {// Data format returned: if (data.status == "successed") {// Build temporary comment DOM var dom = ''; dom + = '
'; dom + =' '; dom + ='
'; dom + ='

'+ data.data.username +' '; dom + ='

'; dom + =' '+ content +' '; dom + =' '; dom + =' just now '; dom + =' '; dom + =' '; // insert a temporary comment to the list $ ("# comment ") .append (dom);} if (data.status ==" failed ") {// alert (data.msg); layer.msg (data.msg);}}}); return false;}); (function () {/ * * Insert single sign-on JS * / var setHost = 'https://passport.elecfans.com'; // Set domain name var script = document.createElement ('script'); script.type = 'text / javascript'; script.src = setHost + '/public/pc/js/t.passport.js'; script.setAttribute ("id", "sso_script"); script.setAttribute ("data-ssoSite", setHost); script.setAttribute ("data-ssoReferer", encodeURIComponent (location.href)); script.setAttribute ("data-ssoSiteid", "11"); var body = document.getElementsByTagName ("body"). item ( 0); body.appendChild (script);}) () / * * It is recommended to modify the style of the article without a picture * * / $ (". Article .thumb"). Each (function () {if ($ (this). find ('img'). attr ('src') == "") {$ (this) .find ('img'). remove (); $ (this) .parent (). css ('padding-left ',' 0px ');}}); / * Baidu share * / window._bd_share_config = {common: {bdText: '', // Custom share content bdDesc: '', // Custom share summary bdUrl: window.location.href, // Custom share URL address bdPic: ''} , share: [{"bdSize": 60, "bdCustomStyle": true}]} with (document) 0 [(getElementsByTagName ('head') [0] || body) .appendChild (createElement ('script')). src = 'http://bdimg.share.baidu.com/static/api/js/share.js?cdnversion=' + ~ (-new Date () / 36e5)]; var add_url = '/ d / article / write / '; // var check_allow = "{: U (' Api / iscantalk ')}"; var check_allow = "/ d / api / iscantalk"; var click_items_length = $ ('. art_click_count '). length; if ( click_items_length> 0) {var id_str = ''; $ ('. art_click_count'). each (function () {id_str + = $ (this) .attr ('data-id') + ',';}) // var url = "{: U ('Api / getclickbyids')}"; var url = "/ d / api / getclickbyids"; var id_data = 'id_str =' + id_str; $ .ajax ({url: url, data: id_data, type: 'post', dataType: 'json', success: function (re) {if (re.list.length> = 1) {var list = re.list; for (var i in list) {var t emp_id = list [i] ['id']; var temp_span = $ (". art_click_count [data-id =" + temp_id + "]") temp_span.html (list [i] ['click']);}} }})} $ ("# comContent"). click (function () {if (now_uid == '') {$ .tActivityLogin (); return false;}}) $ (function () {var follow_wrap = $ ( ".author-collect"); var now_uid = "{$ _super ['uid']}"; var face_src = "{$ _super ['uface']}"; var getFollowNum = $ (". followNum strong"). html (); // Follow $ (window) .on ('click', '.author-collect', function () {if (now_uid == '') {$ .tActivityLogin (); return false;} if ( $ (this) .attr ('id') == 'follow') {$ .post ('/ d / user / follow', {tuid: article_user_id}, function (data) {// Data format returned: if (data.status == "successed") {$ (". followNum strong"). html (++ getFollowNum); follow_wrap.html ('followed'). attr ('id', 'cancelFollow'). css ( 'background', '# 999'); var follow_user = ' '; $ (' # follow_list '). append (follow_user);} if (data.status == "failed") {alert (data.msg);}});} else {// Unfollow if ($ ( this) .attr ('id') == 'cancelFollow') {$ .post ('/ d / user / cancelFollow', {tuid: article_user_id}, function (data) {// Data format returned: if (data .status == "successed") {follow_wrap.html ('Follow'). attr ('id', 'follow'). css ('background', '# f90'); $ (". followNum strong"). html (-getFollowNum); $ ('# follow_list .face'). each (function () {var target_uid = $ (this) .attr ('data-uid'); if (target_uid == now_uid) {$ ( this) .remove ();}})} if (data.status == "failed") {alert (data.msg);}}); return false;}}});});}); / * var myface = "{$ _super ['uid'] | avatar}"; var myname = "{$ _super ['username']}"; var article_id = {$ article ['id']}; var article_user_id = {$ article ['mid']}; // Article author ID $ (function () {<notempty name = "clearnum"> // Reduce the number of reminders var count = parseInt ($ ("# noticeCount"). html ()); count = count-{$ clearnum}; $ ("# noticeCount"). html (count); if ( count

Skiving Heat Sink

Power Skiving,Skived Heatsink,Aluminum Heat Sink,Skived Fin Heat Sink

Dongguan Formal Precision Metal Parts Co,. Ltd , https://www.formalmetal.com